是否有办法让Vue的虚拟DOM中的innerHTML只渲染一次。

是否有办法让Vue的虚拟DOM中的innerHTML只渲染一次。
例如:
createElement(div,
domProps: {
innerHTML: this.a
})
当this.a值发生改变的时候,不再绑定到虚拟DOM的innerHTML。类似于v-once指令。

回复
阅读 1.7k
1 个回答

我的思路是在data中再定义一个变量比如tempA,然后写个computed。

computed: {
    compA: {
        get(){
            return this.tempA;
        }
        set(value){
            if (!this.tempA) {
                this.tempA = value;
            }
        }
    }
}

...

this.tempA = this.a;

createElement(div, domProps: {
        innerHTML: this.tempA
});
推荐问题
宣传栏