如果我理解正确的话,您会从 AJAX 调用中获取自定义组件的标签,并希望从中构建一个 Vue 组件。
所以假设这是你的<test-component>
:
Vue.component('test-component', {
template: "<p>I am the test component template</p>",
methods: {
// Component logic...
}
});
现在,您可以在应用程序的某个位置进行 AJAX 调用:
$(document).ready(function() {
var html = '<test-component></test-component>';
var url = "https://jsonplaceholder.typicode.com/posts";
$.get(url, function (data) {
var res = Vue.compile(html)
new Vue({
render: res.render,
staticRenderFns: res.staticRenderFns
}).$mount('#media_lib_app')
}.bind(this));
})
您的组件安装点:
<div id="media_lib_app"></div>
有关 .compile 的更多信息:
https://v2.vuejs.org/v2/api/#Vue-compile https://v2.vuejs.org/v2/api/#Vue-compile
Note: Vue.compile()
仅在完整版本中可用。
您可以在这里找到一个工作示例:
https://jsbin.com/motuvokeha/edit?html,js,输出 https://jsbin.com/motuvokeha/edit?html,js,output
希望这可以帮到你 :)