Programing

vuex 상태에 따라 구성 요소 데이터 다시 로드

c10106 2022. 4. 4. 20:56
반응형

vuex 상태에 따라 구성 요소 데이터 다시 로드

나는 여러 웹 샵을 위한 하나의 관리자 패널을 만들고 있다.현재 편집 중인 웹 사이트를 추적하려면website나의 vuex 상태에서는 반대한다.그 웹사이트는 국가에 관한 조치를 발송하는 버튼에 의해 변경될 수 있다.

admin 대시보드 페이지는 선택한 웹 사이트의 통계를 보여주는 페이지로서, 이러한 통계에 대한 데이터는 현재 페이지 구성요소 자체에 저장되어 있다.

이제 대시보드에 있을 때 다른 웹 사이트로 변경할 때 문제가 생겼어.대시보드에 대한 URL이 동일하기 때문에 통계는 변경되지 않는다.부에루터가 URL의 변경을 감지하지 못해 구성요소를 다시 로드할 필요가 없기 때문이라고 생각하지만, 웹사이트가 변경될 때 이런 일이 일어나길 바란다.아니면 적어도 웹사이트가 바뀌어서 아약스 소스에 다시 수동으로 전화를 걸 수 있다는 걸 알 수 있는 방법.

나는 몇 주 전부터 vue를 사용하기 시작했지만 이것을 성취할 방법을 찾지 못했다.

Vuex의 돌연변이 및 액션을 구독할 수 있음: https://vuex.vuejs.org/api/#time

관리자 대시보드 구성 요소의 생성된 후크에서 Vuex 저장소를 주입한다고 가정하면 다음과 같은 작업을 수행할 수 있다.

created: function() {
    this.unsubscribe = this.$store.subscribe((action, state) => {
        if (action.type === 'changeWebsite') {  // Whatever your action is called
            this.updateWebsiteData(action.payload); // Method to update component data 
        }
    });
},
beforeDestroy: function() {
    this.unsubscribe();
},

참조URL: https://stackoverflow.com/questions/54517326/reload-component-data-based-on-vuex-state

반응형