鍍金池/ 問答/HTML/ vue中手動刪除dom,不是通過刪除數(shù)據(jù)。數(shù)據(jù)無法重新渲染

vue中手動刪除dom,不是通過刪除數(shù)據(jù)。數(shù)據(jù)無法重新渲染

因為使用了jsPlumb插件,為了刪除dom需要手動調(diào)用js的方法清空容器(本質(zhì)上還是直接操作dom,容器里是列表渲染的數(shù)據(jù)dom)。但是這樣操作以后,vue里面的數(shù)據(jù)更新之后頁面不會隨之更新。
我之前嘗試了多種方法,還是只能插件的刪除方法才能刪除干凈,因為插件提供了連線拖拽功能在dom上,僅僅修改數(shù)據(jù)無法將插件添加的svg等刪除完全。
所以我想知道vue里面有沒有這種直接刪除dom的處理方法呢?

回答
編輯回答
只愛你

<div ref="box">

<p>1<p/>
<p>2<p/>
<p>3<p/>
<p>4<p/>

<div/>

methods:{

clear(){
    this.$refs.box.innerHTML=""
}

}

這樣就可以直接操作DOM

2018年8月4日 18:09
編輯回答
奧特蛋

v-if可以嗎?

2018年5月21日 11:59
編輯回答
刮刮樂

vue是以數(shù)據(jù)為驅(qū)動的,不建議直接操作DOM,最好是通過變量控制v-if / v-show 等來隱藏顯示

2017年7月30日 03:31
編輯回答
喵小咪

vue里面的數(shù)據(jù)更新之后頁面不會隨之更新,這個大多是因為你修改了數(shù)據(jù)里的對象,對象是指針,指針沒有變就等于數(shù)據(jù)沒有變,只是指針?biāo)傅臄?shù)值變了。
為了強(qiáng)制刷新vue的dom,可以用深度克隆的辦法克隆數(shù)據(jù)出來再賦值回去,就可以讓vue刷新了

2017年6月16日 22:10