Vue.js v-html未在vue 2中呈现vue组件
我正在尝试使用道具渲染组件。但仅当内容道具不是组件时才起作用 以下是一个例子:Vue.js v-html未在vue 2中呈现vue组件,vue.js,Vue.js,我正在尝试使用道具渲染组件。但仅当内容道具不是组件时才起作用 以下是一个例子: //注册模态组件 Vue.component('component'{ 模板:“这是组件”, }) //启动应用程序 新Vue({ el:“#应用程序”, 数据:函数(){ 返回{ 测试1:'这是标签', 测试2:“//这不起作用 } } }) 这可能吗?不,您不能使用v-html来实现这一点,正如明确指出的: 请注意,内容是以纯HTML形式插入的-它们不会编译为Vue模板 内容作为普通HTML插入-忽略数据绑定/
//注册模态组件
Vue.component('component'{
模板:“这是组件”,
})
//启动应用程序
新Vue({
el:“#应用程序”,
数据:函数(){
返回{
测试1:'这是标签',
测试2:“//这不起作用
}
}
})
这可能吗?不,您不能使用v-html来实现这一点,正如明确指出的: 请注意,内容是以纯HTML形式插入的-它们不会编译为Vue模板
内容作为普通HTML插入-忽略数据绑定/vue组件。请注意,您不能使用v-html编写模板部分,因为Vue不是基于字符串的模板引擎。相反,组件是首选的UI重用和组合的基本单元。不,您不能使用v-html来实现这一点,正如明确指出的: 请注意,内容是以纯HTML形式插入的-它们不会编译为Vue模板 内容作为普通HTML插入-忽略数据绑定/vue组件。请注意,您不能使用v-html编写模板部分,因为Vue不是基于字符串的模板引擎。相反,组件是首选的UI重用和组合的基本单元
// register modal component
Vue.component('component', {
template: '<span class="component-tag">This is component</span>',
})
// start app
new Vue({
el: '#app',
data: function (){
return {
test1 : '<label>this is label</label>',
test2 : '<component></component>' //this doest work
}
}
})
<!-- app -->
<div id="app">
<span v-html="test1"></span>
<span v-html="test2"></span>
</div>