Vue路由基础

Posted tractors

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue路由基础相关的知识,希望对你有一定的参考价值。

Vue路由

  功能就是在不重新请求页面的情况下,更新页面视图;

一、安装:

 

  1cnpm install vue-router -s

  2)依赖:cnpm install

二、设计路由界面:

  创建components文件夹,文件夹内分别创建user、Home组件

*user.vue*
<template>
<div>user</div>
</template>

*Home.vue*
<template>
<div>Home</div>
</template>

三、创建静态路由表:

  在src下创建routes.js

import Home from ‘@/components/Home.vue‘
import User from ‘@/components/user/user.vue‘
 
export const routes = [
        path:‘/‘,component:Home,
        path:‘/user‘,component:User
]

四、引入路由模块并使用:

  main.js中引入路由模块并使用

import Vue from ‘vue‘
import App from ‘./App.vue‘
import VueRouter from ‘vue-router‘ //1.引入路由模块
import routes from ‘./routes‘        //2.引入静态路由表
 
Vue.use(VueRouter); //3.使用路由模块
 
//4.创建一个VueRouter模块的实例
const router = new VueRouter(
        routes:routes
);
 
new Vue(
  el: ‘#app‘,
  router,//5.把router实例放入到vue实例中
  render: h => h(App)
)

五、路由使用:

  在App.vue中:

 

<template>
  <div class="container">
                <div class="row">
                        <div class="col-xs-12 col-sm-8">
                                <h1>Routing</h1>
                                <router-view></router-view>
                        </div>
                </div>
        </div>
</template>

 

六、路由跳转实现两种方式:

  1)通过html中的<router-link to="路由地址">标签实现:

<template>
  <div>
    <div>
      <span><router-link to="/home">首页</router-link></span>
      <span><router-link to="/products">商品</router-link></span>
    </div>
    <router-view></router-view>
  </div>
</template>

  2)通过js实现:

this.$router.push("/Products/1");

    //this指向问题:使用箭头函数;

 

this.axios(
    method: ‘get‘,
    url: ‘‘
).then(function(resp)
    //无法找到本组件;
    console.log(this);
    this.$router.push("/home");
)
this.axios(
    method: ‘get‘,
    url: ‘‘
).then((resp)=>
    console.log(this);
    this.$router.push("/home");
)

 

七、参数传递:

  1)设置参数:router.js

export const routes = [
        path:‘/‘,component:Home,
        path:‘/user/:id‘,component:User
]

  2)传递参数:

 

<router-link to="/products/123">商品</router-link>

 

  3)接收参数:

 

<script>
    export default 
      name: "products",
      data()
          return
            id:this.$route.params.id
          
      
    
</script>

 

以上是关于Vue路由基础的主要内容,如果未能解决你的问题,请参考以下文章

vue.js路由vue-router——简单路由基础

vue基础5--vue路由的使用

Vue路由基础

vue Router路由基础

vue基础——嵌套路由

vue路由基础介绍