美文网首页
code1 Vue-Router

code1 Vue-Router

作者: PingerL | 来源:发表于2019-12-27 11:01 被阅读0次

    一. 通过Vue CLI 快速创建一个项目

    1. vue create router-demo1 在终端中执行指令
    2. 选择手动设置,安装Router
    3. 一直回车下去,直至项目创建完成

    二. 清理项目里的一些东西

    三. 简单静态路由
    1. 先在 components 文件夹下创建 A-router.vueB-router.vue两个组件,组件内容如下:

    // A-router.vue
    <template>
      <div class="a-router">
        这是路由页面 A ,现在是最简单的路由跳转
      </div>
    </template>
    
    1. router/index.js中定义路由
    import Vue from 'vue'
    import VueRouter from 'vue-router'
    import Arouter from '../components/A-router.vue' // 1. 引入路由组件
    import Brouter from '../components/B-router.vue' 
    
    Vue.use(VueRouter)
    
    const routes = [
      { // 2. 定义路由
        name: 'router-a',  //定义路由的名字
        path: '/a',               // 指定路由路径
        component: Arouter   // 要跳转的组件
      },
      {
        name: 'router-b',
        path: '/b',
        component: Brouter
      }
    ]
    
    const router = new VueRouter({
      mode: 'history',
      base: process.env.BASE_URL,
      routes
    })
    
    export default router
    
    1. main.js 中注入路由
    import Vue from 'vue'
    import App from './App.vue'
    import router from './router' //导入 router,一般都是默认导好的
    Vue.config.productionTip = false
    
    new Vue({
      router, // 通过 router 配置参数注入路由,从而让整个应用都有路由功能,一般也是不需要自己配置的
      render: h => h(App)
    }).$mount('#app')
    
    1. App.vue中使用路由
    <template>
      <div id="app">
        <h1>Vue Router</h1>
        <!-- 1. 使用 router-link 组件来导航. -->
        <!-- 通过传入 `to` 属性指定链接. -->
        <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
        <router-link to="/a">Router-A</router-link>
        <router-link to="/b">Router-B</router-link>
        <hr>
        <!-- 2. 路由出口 -->
        <!-- 路由匹配到的组件将渲染在这里 -->
        <router-view></router-view>
      </div>
    </template>
    
    <style>
    #app {
      font-family: 'Avenir', Helvetica, Arial, sans-serif;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      text-align: center;
      color: #2c3e50;
    }
    
    #app {
      padding: 30px;
    }
    
    #app a {
      font-weight: bold;
      color: #2c3e50;
      padding: 10px;
    }
    
    #app a.router-link-exact-active {
      color: #42b983;
    }
    </style>
    
    1. 此时,一个简单的静态路由就配置好了

    2. 动态路由匹配

    // router/index.js 文件
    添加路由C
    {
        name: 'router-c',
        path:'/c/:id', //动态路径参数 以冒号开头,当匹配到一个路由时,参数值会被设置到 this.$route.params,可以在每个组件内使用
        component:Crouter
      }
    
    // App.vue 文件
    <router-link :to="{name:'router-c',params:{id:123}}">Router-C</router-link>
    
    // C-router.vue
    <div>$route.params.id-->{{$route.params.id}}</div>
    

    相关文章

      网友评论

          本文标题:code1 Vue-Router

          本文链接:https://www.haomeiwen.com/subject/nxoloctx.html