我用Vue-Storefront,生成了一个使用Nuxt的商店,在布局与路由文档页面中,建议使用extendRoutes:
require("isomorphic-fetch");
import webpack from "webpack";
const platformENV = process.env.NODE_ENV !== "production" ? "http" : "https";
const config = {
// here ------------------------------
router: {
extendRoutes(routes, resolve) {
routes.push({
name: "custom",
path: "/test",
component: resolve(__dirname, "pages/Category.vue"),
});
},
},
// here ------------------------------
...
};
export default config;问题是,extendRoutes从未被调用,因为其中没有触发控制台日志,我不知道如何解决这个问题。未创建或重命名的路由将路由到404页。如果可以的话,我正在链接我的package.json的某些部分:
"dependencies": {
"@nuxt/image": "0.6.0",
"@nuxtjs/pwa": "^3.3.5",
"@nuxtjs/sitemap": "^2.4.0",
"@nuxtjs/style-resources": "^1.0.0",
"@storefront-ui/vue": "^0.12.0",
"@vue-storefront/shopify": "^1.1.2",
"@vue-storefront/middleware": "2.5.6",
"@vue-storefront/nuxt": "2.5.6",
"@vue-storefront/nuxt-theme": "2.5.6",
"cookie-universal-nuxt": "^2.1.3",
"core-js": "^3.19.1",
"isomorphic-fetch": "^2.2.1",
"nuxt": "^2.13.3",
"@nuxtjs/i18n": "^7.2.1",
"vee-validate": "^3.2.3",
"vue-scrollto": "^2.17.1",
"@nuxtjs/device": "^2.1.0",
"ipx": "0.9.1"
},
"devDependencies": {
"@nuxt/types": "^2.13.3",
"@nuxt/typescript-build": "^2.0.0",
"@vue/test-utils": "^1.0.0-beta.27",
"babel-jest": "^24.1.0",
"cypress": "^9.1.0",
"ejs": "^3.0.2",
"jest": "^27.4.3",
"lint-staged": "^11.1.2",
"start-server-and-test": "^1.14.0",
"vue-jest": "^4.0.0-0"
}如果有人经历过同样的问题,请告诉我一个想法。
发布于 2022-08-06 22:10:41
我在试图摆脱@kissu这样的代码后找到了一个答案。问题来自于nuxt.config.js,中的buildModules中的"./modules/cms/build",这一行调用了集成的cms的构建脚本,该脚本取代了router.extendRoutes函数并创建了自己的路由。
buildModules: [
// to core
"./modules/cms/build",
"@nuxtjs/composition-api/module",
...我希望这对外面的人有帮助!
https://stackoverflow.com/questions/73262721
复制相似问题