【发布时间】:2020-08-03 18:43:09
【问题描述】:
我得到了一个包含 Vue.component 实例的 components.js。
然后我得到了一个 main.js,其中我有一个路由器,我正在使用组件来创建不同的页面。
在 index.html 我有路由器页面的链接。
问题是第一个页面加载它没有加载模板。 如果我单击主页链接,则没有任何反应。但是,如果我单击 About 或 Project,页面会完全重新加载。 (得到一个带有提示的 iframe,它再次显示。) 然后,点击 About 或 Project 后一切正常。
我尝试在新选项卡中手动打开 example.com/#/,但结果相同。
main.js 是这样的:
const About = { template: '<div>About</div>' }
const Home = { template: `
<web-header></web-header>
` }
const Project = { template: '<div>Project</div>' }
const routes = [
{ path: '/', component: Home },
{ path: '/about', component: About },
{ path: '/projects', component: Project }
]
const router = new VueRouter({
routes: routes
})
const app = new Vue({
router
}).$mount("#app");
【问题讨论】:
-
你需要看路线。
-
哦,我是使用 Vue 的新手。我应该在哪里使用观察者?
-
观察路线,以便对路线变化做出反应 E.g
const Home = { template: '...', watch: { $route(to, from) { // react to route changes... } } } -
在路由文件中注册的每个文件中查看路由
-
还是有同样的问题。
标签: javascript vue.js vue-component vue-router reload