真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

VUE如何實現(xiàn)動態(tài)給對象增加屬性并觸發(fā)視圖更新操作

這篇文章主要介紹了VUE如何實現(xiàn)動態(tài)給對象增加屬性并觸發(fā)視圖更新操作,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,樅陽企業(yè)網(wǎng)站建設,樅陽品牌網(wǎng)站建設,網(wǎng)站定制,樅陽網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,樅陽網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

在開發(fā)過程中,我們時常會遇到這樣一種情況:當vue的data里邊聲明或者已經(jīng)賦值過的對象或者數(shù)組(數(shù)組里邊的值是對象)時,向?qū)ο笾刑砑有碌膶傩?,如果更新此屬性的值,是不會更新視圖的。

根據(jù)官方文檔定義:如果在實例創(chuàng)建之后添加新的屬性到實例上,它不會觸發(fā)視圖更新。

Vue 不允許在已經(jīng)創(chuàng)建的實例上動態(tài)添加新的根級響應式屬性(root-level reactive property)。然而它可以使用 Vue.set(object, key, value) 方法將響應屬性添加到嵌套的對象上。

我們編寫如下代碼測試給一個對象動態(tài)添加屬性:


   
  
var vm=new Vue({   el: "#app",   data: {     i:0,     form:{}   },   methods:{     demoSet(){       this.form.amount=this.i++;       //this.$set(this.form,"amount",this.i++);     }   }   });

這種方式可以給form增加一個屬性,但是不會界面不會響應更新。

正確的做法:


   
  
var vm=new Vue({   el: "#app",   data: {     i:0,     form:{}   },   methods:{     demoSet(){       this.$set(this.form,"amount",this.i++);     }   }   });

這樣就可以給對象添加amount 屬性了。

這個有什么應用場景呢,比如 data.form 屬性很多,其中大部分是不需要要的,這時候,可以使用這種方法實現(xiàn)動態(tài)添加需要的屬性。

需要注意的是,這種方式是不能給根數(shù)據(jù)添加屬性的,比如:


   
  
var vm=new Vue({   el: "#app",   data: {   },   methods:{     demoSet(){       this.$set(this,"name","ray");     }   }   });

這種方式給data 增加一個 name 屬性是無效的。

為什么要使用Vue

Vue是一款友好的、多用途且高性能的JavaScript框架,使用vue可以創(chuàng)建可維護性和可測試性更強的代碼庫,Vue允許可以將一個網(wǎng)頁分割成可復用的組件,每個組件都包含屬于自己的HTML、CSS、JavaScript,以用來渲染網(wǎng)頁中相應的地方,所以越來越多的前端開發(fā)者使用vue。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“VUE如何實現(xiàn)動態(tài)給對象增加屬性并觸發(fā)視圖更新操作”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!


網(wǎng)頁題目:VUE如何實現(xiàn)動態(tài)給對象增加屬性并觸發(fā)視圖更新操作
URL分享:http://weahome.cn/article/jhgdep.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部