首页 > 解决方案 > 为什么 nuxt.js 在 SSR 中调用 beforeCreate, created 钩子?

问题描述

目前,我们正在使用 nuxt.js 开发 SPA。一个问题是,beforeCreate 和 created 钩子是在 SSR 模式下调用的,当 SSR 完成时,它们会在 CSR 中再次调用。

光看nuxt.js的生命周期图,我就懵了,因为内容没有解释。

任何答案将不胜感激!

标签: javascriptvuejs2nuxt.js

解决方案


Nuxt 在后台使用 Vue SSR,您可以在它的文档中找到解释的开始:https ://ssr.vuejs.org/guide/universal.html#component-lifecycle-hooks

组件生命周期挂钩

由于没有动态更新,在所有生命周期钩子中,只有 beforeCreate 和 created 将在 SSR 期间被调用。这意味着其他生命周期钩子(例如 beforeMount 或mounted)中的任何代码都只会在客户端上执行。

首先,Vue SSR 服务器运行生命周期挂钩以从 Vue 应用程序构建 HTML 内容。然后在客户端的 Vue Hydratation 之后,前端必须重新播放所有 Vue 生命周期钩子才能在浏览器中运行 JS 应用程序。


推荐阅读