반응형
Vuex - 변환 중인 업데이트 개체
사용자가 버튼을 클릭한 후 vuex 저장소의 데이터를 로컬 개체의 데이터로 교체합니다.하지만 나는 돌연변이에 갇혀있다.상세한 것에 대하여는, 이하에 몇개의 코드를 참조해 주세요.
사용자가 버튼을 클릭한 후 호출되는 메서드입니다.(this.tableview는 vuex 개체와 동일한 값을 가진 로컬 개체입니다.)
updateVuexTableview() {
// eslint-disable-next-line no-console
console.log("Update Vuex Table view");
this.updateTableview(this.tableview)
}
이 방법에서는 vuex 액션이 호출됩니다.(updTableview는 삽입하는 새로운 데이터입니다.)
async updateTableview({commit}, updTableview) {
const response = await axios.put(
`http://localhost:3000/tableview`,
updTableview
);
// eslint-disable-next-line no-console
console.log(response.data);
commit('updateTableviewMut', response.data);
},
이것이 호출되는 돌연변이입니다.그게 내가 갇혀있는 곳이야.데이터를 터트렸다가 다시 밀어보려고 했지만, 지금까지 아무 것도 되지 않습니다.
updateTableviewMut: (state, updTableview) => {
state.tableview.push(updTableview)
},
여기가 제 주(州)입니다.
const state = {
tableview: {
"thema_c": true,
"status_c": true,
"priority_c": true,
"custom1_c": true,
"custom2_c": true,
"customFieldName1": "Custom1",
"customFieldName2": "Custom2"
},
};
다음 방법으로 개체를 업데이트할 수 없습니다..push
개체를 재할당하거나 특정 필드를 설정해야 합니다.코드를 다음과 같이 변경합니다.키 값 쌍을 추가하는 경우 다음을 수행할 수 있습니다.
updateTableviewMut: (state, updTableview) => {
state.tableview['keyname'] = updTableview
}
또는 개체를 재할당하려는 경우 다음을 수행할 수 있습니다.
updateTableviewMut: (state, updTableview) => {
state.tableview = updTableview
}
언급URL : https://stackoverflow.com/questions/60258149/vuex-update-object-in-mutation
반응형
'programing' 카테고리의 다른 글
닫힘 소켓과 종료 소켓의 차이 (0) | 2022.07.16 |
---|---|
Python을 사용하여 C 및 C++ 코멘트를 삭제하시겠습니까? (0) | 2022.07.16 |
VueJS 컴포넌트를 Google Map Infowindow로 렌더링 (0) | 2022.07.11 |
메서드 내 로컬 변수 상태에 액세스하는 방법 - Vue? (0) | 2022.07.11 |
예외조항 중 어떤 부분이 비용이 많이 드나요? (0) | 2022.07.11 |