Vue: vue(オブジェクト)データに新しいプロパティを追加するにはどうすればよいですか?

作成日 2016年07月28日  ·  3コメント  ·  ソース: vuejs/vue

私のデータは以下になります

 data: {
                contacts: {
                    "1": {
                        isSelected: false,
                        UID:"1",
                        cardType: 0      
                    },
                    "2": {
                        isSelected: false,
                        UID:"2",
                        cardType: 0    
                    },
                    "3": {
                        isSelected: false,
                        UID:"3",
                        cardType: 0    
                     },
            }
...

このメソッドを使用して新しい連絡先を追加することはできますが、互換性の問題が発生したため、オブジェクトに新しいプロパティを追加する方法は他にあるのでしょうか。または、オブジェクトの代わりに配列を使用するように変更したほうがよいでしょう。
this.contacts = Object.assign({}, this.contacts, newObj);

どうもありがとう。

最も参考になるコメント

おかげで、setメソッドを使用して、今はOKです。

this.$set('contacts[' + newPsgId + ']', newObj)
Vue.set(this.contacts[newPsgId], 'name', this.editPsgName);  

全てのコメント3件

ドキュメントを読む: Vue.set

おかげで、setメソッドを使用して、今はOKです。

this.$set('contacts[' + newPsgId + ']', newObj)
Vue.set(this.contacts[newPsgId], 'name', this.editPsgName);  

前の解決策は私には機能しません(Vue ^ 3.0.0)
自分でやってください。 これが誰かを助けることを願っています。

this.$set(this.contacts, newPsgId, newObj)
このページは役に立ちましたか?
0 / 5 - 0 評価