vue-router 文档
    vue-router 源码

    在 main.ts 中挂载实例

    1. import Vue from 'vue';
    2. import App from './App.vue';
    3. import router from './router';
    4. Vue.config.productionTip = false;
    5. new Vue({
    6. router,
    7. render: h => h(App)
    8. }).$mount('#app')

    路由配置的组件将渲染到

    1. <template>
    2. <div id="app">
    3. <!-- 路由出口 -->
    4. <!-- 路由匹配到的组件将渲染在这里 -->
    5. <router-view/>
    6. </div>
    7. </template>

    在 router/index.ts 中配置路由

    1. import Vue from 'vue';
    2. import VueRouter, { RouteConfig } from 'vue-router';
    3. import Money from '@/views/Money.vue';
    4. import Labels from '@/views/Labels.vue';
    5. Vue.use(VueRouter);
    6. const routes: Array<RouteConfig> = [
    7. {
    8. path: '/',
    9. redirect: './money' // 重定向
    10. },
    11. {
    12. path: '/money',
    13. component: Money
    14. },
    15. {
    16. path: '/labels',
    17. component: Labels
    18. },
    19. {
    20. path: '*',
    21. component: NotFound
    22. }
    23. ]
    24. const router = new VueRouter({
    25. routes
    26. })
    27. export default router;

    在任意需要跳转页面的地方设置路由

    1. <template>
    2. <!-- 使用 router-link 组件来导航. -->
    3. <!-- 通过传入 `to` 属性指定链接. -->
    4. <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
    5. <nav>
    6. <router-link to="/detail"> 明细 </router-link>
    7. <router-link to="/money"> 记账n</router-link>
    8. </nav>
    9. </template>
    10. <script lang="ts">
    11. export default {
    12. name: 'Nav',
    13. }
    14. </script>

    相关阅读:
    前端路由
    Vue Router 4