这篇文章主要介绍“Vue中$router.push()路由切换、传参和获取参数的方法是什么”,在日常操作中,相信很多人在Vue中$router.push()路由切换、传参和获取参数的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue中$router.push()路由切换、传参和获取参数的方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1、路由的两种常见方式
1)声明式:  <router-link to="/login">
    <router-link :to="{ path: '/login' }">Home</router-link>
    <router-link :to="{ name: 'loginPage'}">User</router-link>2)编程式:$router.push(...)
该方法的参数可以是一个字符串路径,或者一个描述地址的对象。
  // 假如现有的路由是(router.js中的登录)
    import LoginPage from "@/views/Login.vue";
    const router = new VueRouter({
      [{ path: "/login", name: "loginPage", component: LoginPage }]
    });
    // 字符串(对应填写上面的path)
    this.$router.push('/login')
    // 对象
    this.$router.push({path: '/login'});
    // 通过路由的 name(对应的就是上面的name)
    this.$router.push({ name: 'loginPage' })2、传参和获取参数(query和params)
1)query方式this.$router.push({<!--{C}%3C!%2D%2D%20%2D%2D%3E-->path:"/login",query:{<!--{C}%3C!%2D%2D%20%2D%2D%3E-->message:"页面跳转成功"}})新页面/路由中 获取参数
console.log(this.$route.query.message);2)params方式
this.$router.push({<!--{C}%3C!%2D%2D%20%2D%2D%3E-->name:"loginPage",params:{<!--{C}%3C!%2D%2D%20%2D%2D%3E-->message:"页面跳转成功"}})新页面/路由中 获取参数
console.log(this.$route.params.message);
注意:
this.$router.push()方法中
path不能和
params一起使用,否则
params将无效。需要用
name来指定页面及通过路由配置的
name属性访问两种方式的区别是:
query传参的参数会带在url后边展示在地址栏,
params传参的参数不会展示到地址栏(刷新后参数失效)。