我正在使用 vue-router,并且在動態導入時注冊組件時遇到問題。如果我使用基本的硬編碼代碼,路由器將正常工作。但是,如果我動態加載我的路線,它將無法渲染我的組件。動態導入組件文件:GetAllPages((data) => { let pages = []; data.map(page => { const pageTitle = page.title.rendered.toLowerCase(); import(`../pages/${pageTitle}.js`).then(module => { pages.push({ path: `/${pageTitle}`, name: `${pageTitle}`, component: module.default }) }) }) return pages;})路由器功能:new VueRouter({ mode: 'history', // routes: pages <= not registering data routes: [ {path: '/about', component: About} // <= working fine ]});動態導入的文件:let AboutPage = { data: () => ({ Message: "hey" }), render: () => { return "<h1>{{Message}}</h1>"; }}export default Vue.component("About", { data: AboutPage.data, template: AboutPage.render()})問題是硬編碼的路由可以工作,而動態導入的頁面則不能。即使我在 data.map 函數中對動態導入的值進行硬編碼,它也不會渲染出我的頁面??刂婆_中沒有來自路由器的錯誤。PS:如果我console.log路由器實例,則會設置動態導入的路由。但不渲染 html。
vue-router 動態導入組件時不渲染組件
溫溫醬
2023-10-20 16:08:35