vue組件傳遞對象中實現(xiàn)單向綁定的示例
當使用vue組件時,組件之間經(jīng)常需要傳遞數(shù)據(jù),這里不討論傳遞一個字符串變量或者數(shù)字變量的情況,那些去看官方文檔就夠了,此處提出我在組件間傳遞對象時遇到的一個坑。
當組件間傳遞對象時,由于此對象的引用類型指向的都是一個地址,所以在子組件中修改對象的某個屬性值,父組件中的對象對應(yīng)的屬性也會隨之改變,如果有這種雙向綁定的需要,那么這也算一種不錯的辦法,但如果不需要這種雙向綁定,那就要定義一個新的對象來復制原對象的屬性和值,坑就在這里,假如你普通的var、let 一個對象,例如:
computed: { data: function () { let obj={}; obj=this.message//this.message是父組件傳遞的對象 return obj } },
將data中各屬性分別綁定到輸入框中,并修改試試,你會發(fā)現(xiàn)父組件中對應(yīng)的屬性值還是會改變,并沒有實現(xiàn)單向綁定的效果,這時就需要加一個方法了
computed: { data: function () { let obj=Object.assign({}, this.message); return obj } },
這樣返回的data就是一個新的對象,并不會指向原對象的地址,所以再對其進行修改就不會對父組件中的對象造成影響了。
以上這篇vue組件傳遞對象中實現(xiàn)單向綁定的示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- Vuejs第一篇之入門教程詳解(單向綁定、雙向綁定、列表渲染、響應(yīng)函數(shù))
- Vue2實現(xiàn)組件props雙向綁定
- Vue2.0利用 v-model 實現(xiàn)組件props雙向綁定的優(yōu)美解決方案
- 深入理解vue.js雙向綁定的實現(xiàn)原理
- Vue.js每天必學之數(shù)據(jù)雙向綁定
- Vue實現(xiàn)雙向綁定的方法
- vue數(shù)據(jù)雙向綁定的注意點
- vue 自定義組件 v-model雙向綁定、 父子組件同步通信的多種寫法
- Vue 實現(xiàn)雙向綁定的四種方法
- VUE實現(xiàn)表單元素雙向綁定(總結(jié))
- Vue.js單向綁定和雙向綁定實例分析
相關(guān)文章
Element-UI el-calendar樣式如何修改日歷
這篇文章主要介紹了Element-UI el-calendar樣式如何修改日歷問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08vue里的axios如何獲取本地json數(shù)據(jù)
這篇文章主要介紹了vue里的axios如何獲取本地json數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08在vue中使用axios實現(xiàn)post方式獲取二進制流下載文件(實例代碼)
這篇文章主要介紹了在vue中使用axios實現(xiàn)post方式獲取二進制流下載文件的相關(guān)資料,需要的朋友可以參考下2019-12-12Vue遞歸組件+Vuex開發(fā)樹形組件Tree--遞歸組件的簡單實現(xiàn)
這篇文章也是我自己開發(fā)的從無到有的過程,所以它可以為你提供一些Tree組件開發(fā)的思路,本文重點給大家介紹vue遞歸組件的簡單實現(xiàn),感興趣的朋友跟隨小編一起看看吧2019-04-04一文詳解Pinia和Vuex與兩個Vue狀態(tài)管理模式
這篇文章主要介紹了一文詳解Pinia和Vuex與兩個Vue狀態(tài)管理模式,Pinia和Vuex一樣都是是vue的全局狀態(tài)管理器。其實Pinia就是Vuex5,只不過為了尊重原作者的貢獻就沿用了這個看起來很甜的名字Pinia2022-08-08Vue2.x如何解決Element組件el-tooltip滾動時錯位不消失的問題
這篇文章主要介紹了Vue2.x如何解決Element組件el-tooltip滾動時錯位不消失的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06vue2中如何更改el-dialog出場動畫(el-dialog彈窗組件)
el-dialog是一個十分好用的彈窗組件,但是出場動畫比較單調(diào),于是決定自定義一個出場動畫,本文通過實例代碼圖文相結(jié)合給大家敘述下實現(xiàn)思路,感興趣的朋友一起看看吧2022-06-06