我认为这是一个误解。据我所知,你试图加载 User.html 在你加载的方式 .vue 文件,但除非你使用Webpack来构建你的项目,否则这不起作用 .vue filetype是什么的 vue-loader project负责解析。
User.html
.vue
vue-loader
Vue Router CDN意味着你没有使用Webpack构建,因此加载像你正在做的组件是不可能的。您可以将Vue Router配置为提供User.html文件,但该文件不能是模板组件,因为在CDN模式下,Vue Router不知道您的服务器上有哪些文件,也不能简单地检索它们。
因此,您需要执行以下三个选项之一:
这是我建议你做的。你会发现你的项目表现更好,使用它更容易开发。
这是例如:
var mytemplate = `<div> <h1>This is my template</h1> </div>` Vue.component('mycomp1', { template: mytemplate }); Vue.component('mycomp2', { template: ` <div> Hello, {{ name }}! </div> `, props: ['name'], });
如果不使用Webpack构建,则无法将其他文件作为模板加载。 Webpack将它们放入您的单页应用程序中,Vue Router不知道里面有什么 User.html Vue也不能将它用作模板。可以告诉Vue路由器重定向到完全功能 User.html 网站页面,但不要只是将其用作模板。
这是我强烈要求你做的事情,但为了完整起见,你可以使用CDN版本,如果你取得的内容 User.html 使用Ajax请求的文件并从中创建一个组件。