반응형
Vuex: 이 개체에서 유일한 요소를 업데이트하려면 어떻게 해야 합니까?
다른 스택 오버플로우 질문 덕분에 여기까지 왔습니다.기본적으로 새 어레이가 단일 ID를 업데이트하여 반환됩니다.하지만 나의store
state
왜 업데이트가 되지 않는가?이건 내 거야state
오브젝트:
allProducts:[
{
"product_name": '',
"code": '',
"id": ''
}
],
그리고 이것은 나의mutation
.
UPDATE_PRODUCT : ({allProducts},payload) =>{
let updatedProducts = allProducts.map(product => {
if(product.id === payload.id){
return Object.assign({}, product, payload);
}
return product;
})
allProducts = updatedProducts;
}
만약 내가console.log(updatedProducts)
나는 완벽하게 좋아지고 있다.result
하지만 나의allProducts
는 갱신되지 않습니다.
놓치셨네요state
변환방법의 첫 번째 파라미터로 지정합니다.
state:{
allProducts:[
{
"product_name": '',
"code": '',
"id": ''
}
]
}
및 변환:
UPDATE_PRODUCT : (state,payload) =>{
let updatedProducts = state.allProducts.map(product => {
if(product.id === payload.id){
return Object.assign({}, product, payload);
}
return product;
})
state.allProducts = updatedProducts.slice();
}
여기서 참조를 대체하고 원래 참조를 잃게 됩니다.
allProducts = updatedProducts;
대신 변이를 시켜야 합니다.
allProducts.length = 0;
Array.prototype.push.apply(allProducts, updatedProducts);
언급URL : https://stackoverflow.com/questions/54308211/vuex-how-can-i-update-the-only-element-from-this-object
반응형
'source' 카테고리의 다른 글
전체 목록을 다시 렌더링하지 않고 vue js v-for에 동적 데이터를 추가하시겠습니까? (0) | 2022.07.26 |
---|---|
vuex 스토어에서 vue-cookie에 액세스하는 방법은 무엇입니까? (0) | 2022.07.26 |
Vue Nuxt에서 API 폴더 감시 및 새로고침 (0) | 2022.07.26 |
Vue 앱으로 p5 가져오기 (0) | 2022.07.26 |
Element UI 테이블 행의 링크를 올바르게 설정하는 방법(간단해야 합니까?) (0) | 2022.07.26 |