2 回答

TA贡献1946条经验 获得超3个赞
你好,请问这个子节点的渲染是出于什么原因考虑自己写了递归?我刚才实验了一下,render 的 createElement的第三个参数可以接受子节点信息。
比如我有一个数据结构` let test_div =
{
'tag': 'div',
'data': {
'attrs': {'id': 'div-1'}
}
, 'children': [
{
'tag': 'div',
'data': {
'attrs': {'id': 'div-2'}
}
, 'children': [
{
'tag': 'div',
'data': {
'attrs': {'id': 'div-3'}
}
, 'children': []
}
]
},{
'tag': 'div',
'data': {
'attrs': {'id': 'div-4'}
}
, 'children': [
{
'tag': 'div',
'data': {
'attrs': {'id': 'div-5'}
}
, 'children': []
}
]
}
]
}`
我渲染的时候就直接
<script>
export default {
name: "DomCreate",
render(createElement){
return createElement(this.list.tag,{...Object.assign(this.list.data)},this.list.children)
},
props:{
list:Object
}
}
</script>
这样就可以直接把这个结构渲染出来。
所以你自己写这个递归是出于什么特殊的考虑么?
添加回答
举报