작성
·
139
1
사용자를 눌러서 사용자 상세페이지로 갈때 마다 사용자의 데이터값이 바뀌는데..
기존에 있던 사용자가 먼저보여졌다가 다른 사용자로 변경되는건...어쩔수 없는건가요??
답변 3
1
beforeDestroy(){
this.$store.state.itemList = {};
}
이런식으로 컴포넌트가 제거될때 데이터값을 초기화하고싶을때는 저런식으로 하면될까요?
아니면 다른 좋은방법이 있을까요?
1
안녕하세요 career87님, 좋은 질문이네요 :) 2가지 해결 책이 있을 것 같아요.
1. 사용자 상세 페이지의 컴포넌트 라이프 사이클 훅 'beforeDestroy'에서 해당 데이터 값 초기화
2. 라우터 네비게이션 가드를 이용해 데이터를 받아왔을 때만 해당 페이지로 진입
한번 적용해보시고 궁금하신 거 있으면 알려주세요 :)
0
아 컴포넌트에서 스토어의 state를 변경하실 때는 반드시 mutations로 접근하셔야 합니다. 저렇게 하면 뷰엑스의 strict 옵션을 넣었을 때 콘솔에 에러가 발생할거에요 :)
결론적으로 아래와 같은 코드로 초기화 하는게 좋을 것 같습니다.
beforeDestroy() {
this.$store.commit('initItemList');
}