2018-09-24 vue.js vue-router

vue-router Vue路由器

Git 安装 npm install vue-router

路由中有三个基本的概念 route, routes, router。

1, route,它是一条路由,由这个英文单词也可以看出来,它是单数, Home按钮 => home内容, 这是一条route, about按钮 => about 内容, 这是另一条路由。

2, routes 是一组路由,把上面的每一条路由组合起来,形成一个数组。[{home 按钮 =>home内容 }, { about按钮 => about 内容}]

3, router 是一个机制,相当于一个管理者,它来管理路由。因为routes 只是定义了一组路由,它放在哪里是静止的,当真正来了请求,怎么办? 就是当用户点击home 按钮的时候,怎么办?这时router 就起作用了,它到routes 中去查找,去找到对应的 home 内容,所以页面中就显示了 home 内容。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="../diyitain/js/vue.js"></script>
    <script src="js/vue-router.js"></script>
</head>
<body>
   <div class="box">
       <router-link to='/home'>dd</router-link>
       <router-link to='/list'>qq</router-link>
       <router-view></router-view>
   </div>
    <script>
        var Home={
            template:`<h1>这是首页</h1>`
        }
        var List={
            template:`<h1>这是下首页</h1>`
        }
        const routes=[
            {path:'/home',component:Home},
            {path:'/list',component:List}
        ]
        const router=new VueRouter({
            routes:routes
        })
        new Vue({
            el:'.box',
            router:
            router
        })
    </script>
</body>
</html>

路由的嵌套 : VueRouter 的参数中使用 children 配置,这样就可以很好的实现路由嵌套

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script src="../diyitain/js/vue.js"></script>
    <script src="js/vue-router.js"></script>
    <div class="box">
        <router-link to='/home'>第一页</router-link>
        <router-link to='/list'>第二页</router-link>
        <router-view></router-view>
    </div>
    <script>
        var Home={
            template:`<h1>第一页</h1>`
        }
        var List={
            template:`<div>
                        <h1>第二页</h1>
                        <ul>
                            <li><router-link to='/list/index'>第三页</router-link></li>
                            <li><router-link to='/list/newq'>第亖页</router-link></li>
                        </ul>
                        <router-view></router-view>
                      </div>
                    `
        }
        var Index={
            template:`<h1>第三页</h1>`
        }
        var Newq={
            template:`<h1>第亖页</h1>`
        }
        const routes=[
            {path:'/',component:Home},
            {path:'/home',component:Home},
            {path:'/list',component:List,
                children:[  
                    {path:'index',component:Index},
                    {path:'newq',component:Newq}
                ]
            }
        ]
        const router=new VueRouter({
            routes:routes
        })
        new Vue({
            el:'.box',
            router:router
        })
    
    </script>
</body>
</html>

v-html v-html 指令用于输出 html 代码 v-html解释标签

v-text v-text 指令用于输出 text 代码 v-text不解释标签

v-once 只渲染元素和组件一次,随后的渲染,使用了此指令的元素/组件及其所有的子节点,都会当作静态内容并跳过,这可以用于优化更新性能

v-pre 在模板中跳过vue的编译,直接输出原始值。就是在标签中加入v-pre就不会输出vue中的data值了

v-cloak 这个指令保持在元素上直到关联实例结束编译。和 CSS 规则如 [v-cloak] { display: none } 一起用时,这个指令可以隐藏未编译的 Mustache 标签直到实例准备完毕

var let const的区别

1.const定义的变量不可以修改,而且必须初始化。

2.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。

3.let是块级作用域,函数内部使用let定义后,对函数外部无影响。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的内容,如果点击页面上的abou...
    你好陌生人丶阅读 1,675评论 0 6
  • vue是什么? vue是构建数据驱动的web界面的渐进式框架。Vue.js 的目标是通过尽可能简单的 API 实现...
    九四年的风阅读 8,764评论 2 131
  • # 传智播客vue 学习## 1. 什么是 Vue.js* Vue 开发手机 APP 需要借助于 Weex* Vu...
    再见天才阅读 3,700评论 0 6
  • 相关概念 混合开发和前后端分离 混合开发(服务器端渲染) 前后端分离后端提供接口,前端开发界面效果(专注于用户的交...
    他爱在黑暗中漫游阅读 2,907评论 4 45
  • vue-router 基本使用 路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的...
    Jony0114阅读 1,262评论 0 0