programing

VUEX의 상태 변경을 수정하는 방법은 무엇입니까?

lastmoon 2023. 7. 6. 22:29
반응형

VUEX의 상태 변경을 수정하는 방법은 무엇입니까?

다른 어레이에서 요소를 스플라이싱한 후 상태가 변경되는 동안 상태를 변경하는 데 문제가 있습니다.명확하게 말하자면, 저는 상태가 변경되는 것을 원하지 않습니다. 단지 어레이에서 하나의 요소를 스플라이스하고 싶습니다.arrayWithFilters = []

export const SHOW_RESULTS_WHEN_NOTHING = (state) => {
  let selectedFilters = {...state.selected.filters},
  arrayWithFilters = []; //Making splice from this array, but it also removes from state.selected.filters. 

  for (let filter in selectedFilters) {
    arrayWithFilters.push(selectedFilters[filter])
  }

  arrayWithFilters.forEach((filter) => {
    if (filter.values.includes('qcontrast')) {
      filter.values.splice('qcolor', 1);
      console.log(filter)
    }
  })
}

다음 코드로 해결된 문제

export const SHOW_RESULTS_WHEN_NOTHING = (state) => {
let selectedFilters = {...state.selected.filters},
    arrayWithFilters = [];

let selectedFiltersCopy = JSON.parse(JSON.stringify(selectedFilters));

arrayWithFilters = Object.values(selectedFiltersCopy);

arrayWithFilters.forEach((filter) => {

    if (filter.values.includes('qcontrast')) {

        filter.values.splice('qcontrast', 1);

    }
})

console.log(arrayWithFilters)

}

언급URL : https://stackoverflow.com/questions/56372781/how-to-fix-state-change-in-vuex

반응형