为了账号安全,请及时绑定邮箱和手机立即绑定

为什么 Vue Router 在我单击链接之前不加载并在之后重新加载所有网页

为什么 Vue Router 在我单击链接之前不加载并在之后重新加载所有网页

人到中年有点甜 2022-12-18 19:00:09
我得到了一个充满 Vue.component 实例的 components.js。然后我得到了一个 main.js,其中有一个路由器,我正在使用这些组件来创建不同的页面。在 index.html 我有路由器页面的链接。问题是第一个页面加载它没有加载模板。如果我点击主页链接,什么也不会发生。但是,如果我单击“关于”或“项目”,页面将完全重新加载。(得到一个带提示的 iframe,它再次显示。)然后,单击关于或项目后,一切正常。我尝试在新选项卡中手动打开 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");
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

我终于找到了问题的根源。使用前未加载的组件。

解决方案:在使用它们之前添加组件文件。

Valorations:我习惯于在 body 结束标签之前添加我所有的脚本。

在这种情况下,您必须在 head 结束标记之前添加组件全局实例文件。(因为如果您之前不加载组件实例,html kebab sintax 将无法正常工作)

现在它工作正常。在这里,您获得了查看我所做更改的承诺。(只需移动标签)

https://github.com/StringManolo/StringManolo.github.io/commit/fcc331dc5136fb8a0da5a4c979ab67c8b85365e7


查看完整回答
反对 回复 2022-12-18
  • 1 回答
  • 0 关注
  • 109 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号