programing

VUEX: 상태 객체 전체에 영향을 줄 수 없는 이유는 무엇입니까?

procenter 2022. 8. 10. 22:06
반응형

VUEX: 상태 객체 전체에 영향을 줄 수 없는 이유는 무엇입니까?

State 객체를 기본값으로 리셋하는 RESET 변환이 스토어에 있습니다.찾은 솔루션은 다음과 같습니다.Object.assign(state, defaultState)대신 작동하게 하다state = defaultState에 의한 영향=특정 속성에서는 동작하지만 전체 상태 개체에서는 동작하지 않습니다.

작업:

RESET: (state) => {
  Object.assign(state, defaultState);
}

작업 안 함:

RESET: (state) => {
  state = defaultState;
}

이는 js가 동작하는 방식 때문입니다.새 개체를 설정할 때=메모리에 새 주소가 있는 완전히 새로운 객체이기 때문에 vuex는 더 이상 추적 방법을 모릅니다.

사용할 때Object.assign(state, defaultState);기본적으로 동일한 개체를 유지하고 속성을 새 값으로 설정합니다.

언급URL : https://stackoverflow.com/questions/47871046/vuex-why-cant-we-affect-the-whole-state-object

반응형