zoukankan      html  css  js  c++  java
  • Vue-router

    1、根文件:index.html

      其中的 <div id="app"> 为整个单页的挂载点

    2、转接文件:main.js

      创建Vue并接入vue-router

      一般为:

      

    import Vue from 'vue'
    import App from './App.vue'     //模板文件   
    import router from '@/router.js'  //导入编辑router文件
     
    import '@assets/css/app.css'      //样式文件
     
    new Vue({
        router,
        render: h => h(App)
    }).$mount('#app')

     3、路由控制文件:router.js

    import Vue from 'vue'
    import Router from 'vue-router'
    
    Vue.use(Router)
    
    import home from '@/components/home.vue'
    import about from '@/components/about.vue'
    import document from '@/components/document.vue'
    
    var router = new Router({
      mode: 'history',
      routes:[
        {
          path:'/home',
          component: home
        },
        {
          path:'/about',
          component: about
        },
        {
          path:'/document',
          component: document
        }
      ]
    });
    
    
    
    export default router

    4、主模板:App.vue

    <template>
      <div id="app">
        <!-- <img src="./assets/logo.png"> -->
        <div class="nav-box">
          <ul class="nav">
            <li>
              <router-link to="/home">home</router-link>
            </li>
            <li>
              <router-link to="/document">document</router-link>
            </li>
            <li>
              <router-link to="/about">about</router-link>
            </li>
          </ul>
        </div>
        <router-view></router-view>
      </div>
    </template>
    <script type="text/javascript">
      export default{
        name:'app'
      }
    </script>
    <style>
    </style>

    笔记:

    1、一般高版本浏览器,html5支持history的用history模式

    2、动态绑定<router-link> ----App.vue  文件中

     

    export default{
        name:'app',
        data(){
          return {
            index: '/home'
          }
        }
      }

      原本:<router-link to="/home" tag="div">home</router-link>

      直接动态绑定:<router-link :to="index">home</router-link>

      对象:<router-link :to="{ path:'/home' }">home</router-link>

    默认<router-link> 生成的是  <a>  标签,在设置tag="div" 后,生成div标签

    <router-link>变为li,<router-link :to="index" tag="li"><i></i><span>home</span></router-link>

    3、路由中   router.js

    linkActiveClass : 'is-active'  该属性设置自定义选中class名,如果页面上某个<router-link>被选中,则会加上"is-active"的class样式

    此样式在css文件中写,也可以设置行间样式 ==>  active-class="activeClass"    

    <router-link :to="{path:'/document'}" active-class="activeClass">document</router-link>  ,其他的<router-link>标签被选中会加上'is-active'样式,这个则会加上 "activeClass"样式

    4、<router-link>本身是鼠标点击时进行切换,现改成鼠标移入进行切换

    <router-link event="mouseover">

    5、如果路由路径未匹配到已有页面

    在routes中配置

    routes:[{

        path: '*',  // * 未通配符

        component: noFound  //404页面(自己写的)

    }]

    6、重定向

    routes:[{

     path: '/home',

       name: 'Home',

       componet: home    //import项

       }{

        path: '*',  // * 未通配符

        //重定向

     //redirect: '/home'

       //redirect: { path: '/home' }

       //redirect: { name: 'Home' }

       //函数

     redirect: (to) =>{  //动态设置重定向的目标

      //目标量路由对象,就是访问的路径的路由信息

      //console.log(to);

      //return '/home';

     

      if( to.path === '/123' ){
        return '/home';
      }else if(to.path === '/456'){
        return {path : '/document'}
      }else{
        return {name: 'About'}
      }

     }

    }]

      

  • 相关阅读:
    Spark算子--join
    Spark算子--filter
    Spark算子--reduceByKey
    Spark算子--mapPartitions和mapPartitionsWithIndex
    Spark算子--map和flatMap
    Flume环境搭建_五种案例
    枚举深入剖析
    Oracle_基本函数查询综合
    Oracle_复杂查询综合
    softmax 杂谈
  • 原文地址:https://www.cnblogs.com/haishen/p/10063135.html
Copyright © 2011-2022 走看看