Vue router의 Global beforeEach guard를 설정하여 vuex의 plusMoveCount()를 실행하도록 구성한다.
./router/index.js에서 vuex를 사용하려면 import를 수행해야 한다.
/src/router/index.js
import store from "@/store";
router.beforeEach(()=>{
store.commit("plusMoveCount");
return true;
});
전체 코드
/src/router/index.js
import {createWebHashHistory, createRouter} from 'vue-router';
//주소와 연결할 컴포넌트를 불러온다
import FirstScreenVue from "@/components/FirstScreen.vue";
import SecondScreenVue from "@/components/SecondScreen.vue";
//404 NotFound 처리를 위한 컴포넌트를 불러온다
import NotFoundVue from "@/components/error/NotFound.vue";
const router = createRouter({
history:createWebHashHistory(),
routes:[
//기본 주소(/) 요청이 올 경우 FirstScreenVue로 연결한다
{path:"/", component:FirstScreenVue},
//second 주소 요청이 올 경우 SecondScreenVue로 연결한다
{path:"/second", component:SecondScreenVue},
//매핑 가능한 화면이 없을 경우 NotFoundVue로 연결한다
{path: '/:pathMatch(.*)', component:NotFoundVue},
]
});
import store from "@/store";
router.beforeEach(()=>{
store.commit("plusMoveCount");
return true;
});
export default router;