使用VueJS
(https://vuejs.org/v2/guide/render-function.html)提供的渲染功能,可以完成以下工作:
render(h, context) {
let children = [];
children.push(h("span", "test nested span"));
return h(
"span",
children
)
}
// results in <span><span>test nested span</span></span>
但是如果我尝试将配置数据传递给父级,它将不起作用
render(h, context) {
let children = [];
children.push(h("span", "test nested span"));
return h(
'span', {
domProps: {
innerHTML: "parent"
},
style: "...",
class: "..."
},
children
)
}
// results in <span>parent</span>
我在做什么错?
更新
因此,我认为这里发生的是innerHTML
的使用,它覆盖了子元素,因为从技术上讲,它们是innerHTML
的一部分。但是我的目标仍然是相同的。我希望能够使用innerHTML
,因为它允许使用原始html,而且我还希望在其后呈现子级。
答案 0 :(得分:0)
您可能正在传递函数render
而不是数组render
。最好将let render = []
更改为let children = []