我正在尝试从外部站点检索 vue 组件并将其加载到我的应用程序中,但我终生无法弄清楚这一点。
这是完整的场景;
假设我想从站点 B 加载一个非常简单的组件;
{
"template": "<div><span>{{message}}</span></div>",
"data": function() {
return { "message": "Hello World" };
}
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试了以下方法,但结果喜忧参半;
在我的 index.ts 中(使用 TypeScript)
Vue.component('my-external-component', () => (Vue as any).http.get("http://test.local/test.js"));
Run Code Online (Sandbox Code Playgroud)
在我的 .vue 文件中
<my-external-component></my-external-component>
Run Code Online (Sandbox Code Playgroud)
这导致此注释被添加到 DOM
<!--function (a, b, c, d) { return createElement(vm, a, b, c, d, true); }-->
Run Code Online (Sandbox Code Playgroud)
但是添加
<component :is="my-external-component"></component>
Run Code Online (Sandbox Code Playgroud)
导致将空注释添加到 DOM
<!----> …Run Code Online (Sandbox Code Playgroud)