質問編集履歴

1

exdec

2019/10/04 03:51

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -93,3 +93,87 @@
93
93
 
94
94
 
95
95
  ![イメージ説明](5e76af5d42a113234200d40000f21fbf.png)
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+ ## 追記
106
+
107
+
108
+
109
+ ```vue
110
+
111
+
112
+
113
+ import * as Util from '../../../../../../../../../../plugins/utility'
114
+
115
+
116
+
117
+ methods: {
118
+
119
+ watcher (e) {
120
+
121
+
122
+
123
+ const path = e.target.name + '=' +e.target.value // 'aaa[0][header][bbb][0][ccc][0][value]=hoge'
124
+
125
+ const addObj = Util.lqs.parse(path) // qsライブラリをラップしてます。
126
+
127
+
128
+
129
+ var storeObj = this.$store.getters.items
130
+
131
+ if (!storeObj) {
132
+
133
+ storeObj = []
134
+
135
+ }
136
+
137
+
138
+
139
+ const mergedObj = _.merge(storeObj, addObj)
140
+
141
+
142
+
143
+ console.log(addObj) // 表示される
144
+
145
+ console.log(mergedObj) // 表示される
146
+
147
+
148
+
149
+ console.log(addObj.aaa); // 表示される
150
+
151
+ console.log(mergedObj.aaa); // 表示される
152
+
153
+
154
+
155
+ console.log(JSON.stringify(addObj)); // 表示される
156
+
157
+ console.log(JSON.stringify(mergedObj)); // 表示されない
158
+
159
+
160
+
161
+ // this.$store.dispatch('save', {type: 'items', values: addObj}) // storeに反映される
162
+
163
+ this.$store.dispatch('save', {type: 'items', values: mergedObj}) // storeに反映されない(_.mergeが原因か?)
164
+
165
+
166
+
167
+ console.log(this.$store.getters.items) // ここでは取得できているようだが、Vue.js devtoolsのstoreでは反映が確認dけいない。
168
+
169
+
170
+
171
+ },
172
+
173
+ },
174
+
175
+ ```
176
+
177
+
178
+
179
+ ![イメージ説明](a8a3b3a5bd57f8fc7f82268d72ff1a63.png)