我一直在尝试使 Vue3 应用程序与 SSR 一起工作,但我陷入了困境serverPrefetch
。我想在服务器中加载一些数据,将其保存在存储中并将其传递给客户端,但它看起来像rendered
这里提到的钩子:https ://ssr.vuejs.org/guide/data.html#final-state -injection不再被调用(因此服务器存储在数据获取后不会更新)。你知道用 Vue3 做这件事的正确方法是什么吗?
这是我的server-entry.js
import { _createApp } from "./app";
export default async (context) => {
const { app, router, store } = _createApp();
router.push(context.url); // push router entry
await router.isReady();
context.rendered = () => {
// this is never executed!!!
context.state = store.state; // this gets embedded in the final HTML as window.__INITAL_STATE__
};
return app;
};