Vue 저장소 데이터 수정

Vue 2를 사용하고 있는 데이터는 다음과 같습니다.

export default new Vuex.Store({
state: {
"cnf": {
 "rad": {

"txf": {

"minE": [1000000, 1000000],

"maxE": [50000000, 50000000]

},

"rxf": {

"minE": [1000000, 1000000],

"maxE": [50000000, 50000000]

},

"filtMod": [0, 0],

"filtCnf": [-999, -999],

"pn": ["", ""],

"sn": ["", ""],

"fw": ["", ""],

"side": [1, 1]
 }
}
} }) 

템플릿에서 사용할 필요가 있다(잘못되어 있다)

<input type="number" v-model="state.cnf.rad.txf.minE[0] / 1000" /> 

{{ state . cnf . rad . txf . minE [ 0 ]}은(는) 어디서 수정할 수 있습니까?매장 내 또는 템플릿 내?



질문에 대한 답변



v-model을 사용하여 저장소에 직접 할당할 수 없습니다.대신 이와 같은 스토어 방법을 사용할 수 있습니다.

푸우부

<input type="number" v-model="num" @input="setNum()" />
data() {
return {
num: 0
} }, methods: {
setNum() {
// num here is passed as a payload in store
// commit is a built-in vuex method to call store actions
// setNumMutation is the name of mutation in store
this.$store.commit('setNumMutation', num);
} } 

가게

state: {
"cnf": {
"rad": {
"txf": {
 "minE": [1000000, 1000000],
 "maxE": [50000000, 50000000]
},
"rxf": {
 "minE": [1000000, 1000000],
 "maxE": [50000000, 50000000]
},
"filtMod": [0, 0],
"filtCnf": [-999, -999],
"pn": ["", ""],
"sn": ["", ""],
"fw": ["", ""],
"side": [1, 1]
}
} }, mutations: {
setNumMutation(state, payload) {
state.cnf.rad.txf.minE[0] = payload / 1000
} }