这是因为首先使用node服务端进渲染的,而node端不存在window对象

解决办法如下 :


把需要执行系统对象的代码放到mounted生命周期里,待node服务端渲染完成之后则可以正常使用啦

注:既然采用服务端渲染了,尽可能避免使用系统对象元素啦


我们所有的数据不能放在vue中的mounted中获取,

因为这样和客户端渲染没什么区别,

vue暴漏的这个环境支持window也就是说这个位置其实是client端做的,

也就是在ssr所有功能实现之后在执行,这样我们和之前就没有任何区别了

Logo

Vue社区为您提供最前沿的新闻资讯和知识内容

更多推荐