반응형
Vue. vuex 상태에 따라 창 닫기 방지
따라서 Vuex 상태에 특정 값이 있는 경우 Vue App이 브라우저 창을 닫지 않도록 합니다.문제는 Vuex 스토어가 라이프 사이클 훅에서 사용할 수 없다는 것입니다.
제가 하려는 일은 다음과 같습니다.
mounted: function () {
window.addEventListener('beforeunload', function (event) {
console.log('unload');
if (this.$store.state.curOrder != ''){
event.preventDefault()
event.returnValue = ""
}
}, false)
},
브라우저 창을 닫으려고 하면 콘솔로그는 맞는데 다음 오류가 나타납니다.
Uncaught TypeError: Cannot read property 'state' of undefined
브라우저를 닫기 전에 Vuex에 액세스할 수 있는 해결 방법이 있습니까?
범위 문제일 수 있습니다.이렇게 해보세요.
별도의 메서드를 만듭니다.
methods: {
onClose(event) {
console.log('unload');
if (this.$store.state.curOrder != ''){
event.preventDefault()
event.returnValue = ""
}
}
}
청취자는 다음과 같이 변경합니다.
window.addEventListener('beforeunload', this.onClose);
언급URL : https://stackoverflow.com/questions/59457165/vue-prevent-window-close-depending-on-vuex-state
반응형
'sourcecode' 카테고리의 다른 글
C 실행 파일 이름 결정 (0) | 2022.08.17 |
---|---|
구성 요소에서 내 스토어 개체에 액세스할 수 없음 (0) | 2022.08.17 |
Javascript - 날짜/시간을 moment.js로 포맷합니다. (0) | 2022.08.17 |
Gradle: '11.0.2'에서 Java 버전을 확인할 수 없습니다. (0) | 2022.08.17 |
nl80211 라이브러리 및 cfg80211 구조 (0) | 2022.08.16 |