解決Vue 通過下表修改數(shù)組,頁面不渲染的問題
需要注意的是,Vue之所以能夠監(jiān)聽Model狀態(tài)的變化,是因為JavaScript語言本身提供了Proxy或者Object.observe()機制來監(jiān)聽對象狀態(tài)的變化。但是,對于數(shù)組元素的賦值,卻沒有辦法直接監(jiān)聽,因此,如果我們直接對數(shù)組元素賦值:
vm.todos[0] = { name: 'New name', description: 'New description' };
會導(dǎo)致Vue無法更新View。
正確的方法是不要對數(shù)組元素賦值,而是更新:
vm.todos[0].name = 'New name'; vm.todos[0].description = 'New description';
或者,通過splice()方法,刪除某個元素后,再添加一個元素,達到“賦值”的效果:
var index = 0; var newElement = {...}; vm.todos.splice(index, 1, newElement);
Vue可以監(jiān)聽數(shù)組的splice、push、unshift等方法調(diào)用,所以,上述代碼可以正確更新View。
以上這篇解決Vue 通過下表修改數(shù)組,頁面不渲染的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue如何點擊多個tab標(biāo)簽打開關(guān)閉多個頁面
這篇文章主要介紹了vue如何點擊多個tab標(biāo)簽打開關(guān)閉多個頁面,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09nginx+vue.js實現(xiàn)前后端分離的示例代碼
這篇文章主要介紹了nginx+vue.js實現(xiàn)前后端分離的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02vue3.0使用taro-ui-vue3引入組件不生效的問題及解決
這篇文章主要介紹了vue3.0使用taro-ui-vue3引入組件不生效的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03vue中用js如何實現(xiàn)循環(huán)可編輯表格
這篇文章主要介紹了vue中用js如何實現(xiàn)循環(huán)可編輯表格,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09VUE項目實現(xiàn)全屏顯示功能之screenfull用法
這篇文章主要介紹了VUE項目實現(xiàn)全屏顯示功能之screenfull用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01Vue實現(xiàn)docx、pdf格式文件在線預(yù)覽功能
在業(yè)務(wù)中,如果遇到文檔管理類的功能,會出現(xiàn)需要在線預(yù)覽的業(yè)務(wù)需求,本文主要是通過第三方庫來實現(xiàn)文檔預(yù)覽功能,并將其封裝成preview組件,感興趣的可以了解一下2022-09-09