使用nuxt.js开发项目,页面切换的时候,前端渲染,会等待asyncdata执行完了页面才会加载
我希望可以先加载页面,再渲染,不然会有明显卡顿的感觉,不知道有没有办法优化?
使用nuxt.js开发项目,页面切换的时候,前端渲染,会等待asyncdata执行完了页面才会加载
我希望可以先加载页面,再渲染,不然会有明显卡顿的感觉,不知道有没有办法优化?
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
asyncData的文档里提到:
asyncData
会在组件加载前获取,可以在服务端或者在路由跳转时执行。所以页面跳转就会这样...
asyncData
应该是用于影响SEO的内容,也就是需要让爬虫读取的内容,否则直接让浏览器发ajax请求即可.如果想要浏览器先显示没有数据的页面在发请求,你可以让SSR的时候请求
asyncData
,浏览器跳转的时候发ajax
请求。具体做法是:
然后在mounted中根据有无获取某个值来决定是否发起请求
这样看起来比较累赘,不过我想不到别的办法了。 个人理解,如果数据需要用于SEO,或者没有某个数据影响渲染才使用
asyncData
,否则让浏览器发ajax请求即可。 你感到卡顿说明这个请求可能需要一定时间,那么在服务端渲染时nodejs也需要等待那么久的时间,用户也会觉得你的页面加载的很慢。 所以尽量不使用asyncData..个人建议官方的example是为了要获取列表,如果不在asynData里获取搜索引擎就看不到内容...