美文网首页
vue-router

vue-router

作者: zy懒人漫游 | 来源:发表于2018-03-18 00:39 被阅读0次

    这次在创建的时候,是没有router文件夹的,router文件夹和index.js文件是自己创建的

    1.安装

    cnpm i vue-router -S

    2.在main.js中引用

    import router from "vue-router"
    Vue.use(router)

    3.配置路由文件

      import HelloWrold from "../components/HelloWorld";
      import Hellozhouyi from "../components/Helloezhouyi";
    
      var router = new VueRouter({
         routes: [
        {
          path: "/",
          component: HelloWrold
        },
        {
          path: "/zhouyi",
          component: Hellozhouyi
        }
      ]
      });
      new Vue({
        el: '#app',
        components: { App },
        template: '<App/>',
        router   //新添加的
      })
    

    4新增src=>router文件夹,新增index.js文件

    • 1.import Vue from "vue";
      import VueRouter from "vue-router";
           routes: [
          {
            path: "/",
            component: HelloWrold
          },
          {
            path: "/zhouyi",
            component: Hellozhouyi
          }
        ]
        });
    
    • 3.改写var router ==>export default
      因为我们需要将它导出去
    • 4.将main.js里的代码删除刚才复制到index.js里的代码
          import App from './App'
          import router from './router'
    
          Vue.config.productionTip = false
    
          /* eslint-disable no-new */
          new Vue({
            el: '#app',
            router,
            components: { App },
            template: '<App/>'
          })
        mian.js呈现这个样子
    
        这样我们就完成了路由的配置,和在init的时候,加载路由一个样子了
    

    5.视图加载的位置

    • 在App.vue的根组件div中引入
    • <router-view/> //可以这么写
    • //<router-view></router-view> 也可以这么写

    6.跳转(导航)

    • A:<router-link to="/zhouyi">Helloezhouyi</router-link>

    • B:渲染成a标签效果 = <a href="#/zhouyi"></a>

      <router-link> 比起写死的 <a href="...">
      会好一些,理由如下:
      1.无论是 HTML5 history 模式还是 hash 模式,它的表现行为一致,所以,当你要切换路由模式,或者在 IE9
      2.降级使用 hash 模式,无须作任何变动。
      3.在 HTML5 history 模式下,router-link 会守卫点击事件,让浏览器不再重新加载页面。
      4.当你在 HTML5 history 模式下使用 base 选项之后,所有的 to 属性都不需要写(基路径)了。

      router-link文档

      C:

    <router-link :to="urlData.helloworld">HelloWorld</router-link> 
     <router-link :to="urlData.zhouyi">Helloezhouyi</router-link>
        
     export default {
        name:'navlist',
          ata(){
             eturn{
              urlData:{
                helloworld:'/',
                  houyi:'/zhouyi'
               }
             }
          }
      }
    
    

    相关文章

      网友评论

          本文标题:vue-router

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