您好,所有编码员
我目前正在网上商店中开发nuxt应用程序。在Nuxt中,我们的设置是使用nuxt构建(目标静态)和&nuxt导出的打字稿构建。
这意味着我们需要在构建时创建所有路由。
现在我们有大约2500条路径,并且我们想创建自己的自定义路由器。这是因为要基于2个api调用获取所有路由,其中一个来自我们的cms,另一个来自我们的PIM。
API调用提供了所有内容页面的URL和所有产品的URL。
在本地工作正常,并且使用正确的组件可以使所有页面正确显示。问题在于我们构建时。
我们在运行的router.js中创建路由器
return new Router({
mode: 'history',
routes: newArr, // <- routes created from api calls / data
scrollBehavior (to, from, savedPosition) {
if (savedPosition) {
return { x: 0, y: 0 }
}
}
})
这可以正常工作。 然后我们是否使用自定义模块在nuxt中停止正常的路由创建,将其链接如下: 来源:medium router examples
const path = require("path")
module.exports = function() {
// tslint:disable: no-any
(this as any).nuxt.options.build.createRoutes = () => {}
(this as any).addTemplate({
fileName: "router.js",
src: path.resolve(`${(this as any).options.srcDir}`, "router.js"),
});
};
问题是当我们构建时,nuxt为每个页面构建运行我们的创建路由器...这意味着它调用两个api的次数超过2500次。这是坏...
无论如何,我们可以一次包装一个路由器,然后将其用于所有页面吗?还是你们有不同的方法