前端开发您现在的位置是:首页 > 博客日志 > 前端开发

Vue路由获取路由参数

<a href='mailto:'>微wx笑</a>的头像微wx笑 2021-01-17前端开发 3 0关键字: vue  路由  参数  

vue路由设置路由参数有2种方式:1.通过query配置:<router-link :to="{ name:&#39;login&#39;,query:{id:1} }">登录</router-link>通过query配置的路径显示如下: 2.通过params配

vue路由设置路由参数有2种方式:0J3无知

1.通过query配置:

<router-link :to="{ name:'login',query:{id:1} }">登录</router-link>

通过query配置的路径显示如下:0J3无知

0J3无知

 0J3无知

2.通过params配置:

<router-link :to="{ name:'register',params:{'name':'San'} }">注册</router-link>

通过query配置的路径显示如下:0J3无知

 0J3无知

通过该方法配置的参数,需要在配置路由的时候给参数留个坑,如下图:0J3无知

0J3无知

 0J3无知

 获取路由参数的方法:0J3无知

1.通过query配置的:

this.$route.query

 0J3无知

 2.通过params配置的:

this.$route.params

 0J3无知

相关代码:0J3无知

复制代码0J3无知

<!DOCTYPE html><html lang="en"><head>
    <title>路由参数</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    </head><body>

    <div id="app">
    </div>
    <script src="https://cdn.bootcss.com/vue/2.5.15/vue.js"></script>
    <script src="js/vue-router.js"></script>
    <script>
        var Login = {
            template:`<div>我是登录页面</div>`,            created() {
                console.log(this.$route.query)
            },
            
        }        var Register = {
            template:`<div>我是注册页面</div>`,            created() {
                console.log(this.$route.params)
            },
        }

        Vue.use(VueRouter);        var router = new VueRouter({
            routes:[
                {name:'login',path:'/login',component:Login},                //通过params传递的路由参数需要用 :参数名 来占个坑                {name:'register',path:'/register/:name',component:Register}
            ]
        });        
        var App = {
            template:`                <div>
                    <router-link :to="{ name:'login',query:{id:1} }">登录</router-link>
                    <router-link :to="{ name:'register',params:{'name':'San'} }">注册</router-link>
                    <router-view></router-view>
                </div>            `
        }        var vm = new Vue({
            el: '#app',
            router:router,
            components: {
                app:App
            },
            template:`<app></app>`        });    </script></body></html>

复制代码0J3无知

 0J3无知

补充说明:0J3无知

$route:路由信息对象,只读对象;0J3无知

$router:路由操作对象 ,只写对象。 0J3无知

转自:https://www.cnblogs.com/sese/p/9595625.html 0J3无知


0J3无知

本文为转载文章,版权归原作者所有,不代表本站立场和观点。

很赞哦! () 有话说 ()