有一个虚拟demo节点,结构如下
var obj={ 'tag':'div', 'id':'111', 'data':{ 'attrs':{'id':'1111'} },'children':[ 'tag':'div', 'id':'111', 'data':{ 'attrs':{'id':'1111'} }, 'children':[] ] }
我用了vue中的render来渲染这个节点,直接用的render,this.list就是上面那个obj
<script> export default { name: "DomCreate", render(createElement){ return createElement(this.list.tag,{...Object.assign(this.list.data)},this.list.children) }, props:{ list:Object } } </script>
现在的问题是我用this.$set修改了obj.children[0].data.attrs.id='22222',为什么不触发render的渲染,强制渲染加了也不好使。而修改外层的obj.data.attrs.id就可以重新渲染。求教,谢谢大家
相关分类