vue路由跳转(切换网页)

引入

    <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>

1、创建路由实例

// 创建index路由实例
        let index = {
            template: '#index'
        }
        // 创建mine路由实例
        let mine = {
            template: '#mine',
        }

        // 1、创建路由实例
        const router = new VueRouter({

        })

 

2、创建映射关系

const router = new VueRouter({
            // 2、创建映射关系
            routes: [
                {
                    path: '/',
                    // 路由重定向,即展示页面为/时自动切换到index
                    redirect: '/index'
                },
                {
                    path: '/index',
                    component: index
                },
                {
                    path: '/mine',
                    component: mine
                }
            ],
        })

 

3、建立联系,将路由挂在在vue实例上

const vm = new Vue({
            el: '#app',
            data: {
            },
            // 3、建立联系,将路由挂载在vue实例上
            // router:router,
            // 简写router
            router,
            methods: {
            },
        })

 

4、展示位置/声明两个组件

    <div id='app'>
        <router-link to='/index' tag='span'>去首页</router-link>
        <router-link to='/mine' tag='span'>去个人中心</router-link>
        <!-- 4、展示位置 -->
        <router-view></router-view>
    </div>
    <!-- 声明两个组件 -->
    <!-- index首页组件 -->
    <template id="index">
        <div>     
            <div>首页</div>
        </div>
    </template>
    <!-- mine个人中心组件 -->
    <template id="mine">
        <div>
            <div>个人中心</div>
        </div>
    </template>

完整代码展示:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title></title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <style>
        .router-link-active {
            color: red;
            font-size: 30px;
        }</style>
</head>

<body>
    <div id='app'>
        <router-link to='/index' tag='span'>去首页</router-link>
        <router-link to='/mine' tag='span'>去个人中心</router-link>
        <!-- 4、展示位置 -->
        <router-view></router-view>
    </div>
    <!-- 声明两个组件 -->
    <!-- index首页组件 -->
    <template id="index">
        <div>     
            <div>首页</div>
        </div>
    </template>
    <!-- mine个人中心组件 -->
    <template id="mine">
        <div>
            <div>个人中心</div>
        </div>
    </template>


    <script>
        // 创建路由实例
        // 创建index路由实例
        let index = {
            template: '#index'
        }
        // 创建mine路由实例
        let mine = {
            template: '#mine',
        }

        // 1、创建路由实例
        const router = new VueRouter({
            // 2、创建映射关系
            routes: [
                {
                    path: '/',
                    // 路由重定向,即展示页面为/时自动切换到index
                    redirect: '/index'
                },
                {
                    path: '/index',
                    component: index
                },
                {
                    path: '/mine',
                    component: mine
                }
            ],
        //增加选中效果,如果添加下面这句在style中应该使用.active改变样式 //linkActiveClass:
'active' }) const vm = new Vue({ el: '#app', data: { }, // 3、建立联系,将路由挂载在vue实例上 // router:router, // 简写 router, methods: { }, }) </script> </body> </html>

 

展示结果:

 

 

 

posted @ 2021-09-20 21:42  从入门到入土  阅读(2604)  评论(0编辑  收藏  举报