博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue---day03
阅读量:5318 次
发布时间:2019-06-14

本文共 7521 字,大约阅读时间需要 25 分钟。

1. Vue的生命周期     - 创建和销毁的时候可以做一些我们自己的事情     - beforeCreated     - created     - beforeMount     - mounted     - beforeUpdate     - updated     - activated     - deactivated     - beforeDestroy     - destroyed     1.1 知识点回顾         1.1.1  beforeCreated  在实例创建之前除标签外,所有的vue实例需要的数据,事件都不存在         1.1.2  created  实例被我创建之后,data和事件已经被解析到,el还没有解析到         1.1.3  beforeMount  开始找标签,数据还没被渲染,事件也没被监听         1.1.4  mounted  开始渲染数据和监听事件         1.1.5  beforeUpdate 数据已经被修改在虚拟DOM,但是还没渲染到页面上         1.1.6  updated  开始使用Diff算法,将虚拟DOM中的要修改数据应用到页面上,真实DOM中的数据也被修改了         1.1.7  beforeDestroy 所有的数据都存在         1.1.8  destroyed 所有的数据都存在(在虚拟DOM中)         1.1.9  
Vue提供的用来缓存消除的标签 - activated和deactivated取代了beforeDestroy和destroyed的执行

 

 
2. Vue的路由系统     2.1 VueRouter的实现原理         - 通过监听a的锚点值,来动态的显示页面内容     2.2 VueRouter的安装使用         2.2.1 第一步:
 1       Vue.use(VueRouter)
2.2.2 第二步:创建router对象和每个url对应的组件
1       let Home = { 2                 template:``, 3             }; 4  5             let Login = { 6                 template:``, 7             }; 8  9             let router = new VueRouter({10                 routes:[11                     {12                         name:'home',13                         path:'/',14                         components:Home',15                     },16                     {17                         name:'login',18                         path:'/login',19                         components:Login,20                     },21                 ]22             });
2.2.3 第三步:注册router对象到根实例中
1       new Vue({2                 el:'#app',3                 template:`
`,4 components:{5 App,6 }7 router:router,8 });
2.2.4 第四步:
1       let App = {2                 template:`3                     
首页
4
登录
5 6
7 `8 }
2.3 VueRouter之命名路由         同上     2.4 VueRouter之路由参数         - user_change/1/         - user_detail/?user_id=1
1     let Home = { 2             template:` 3                 

欢迎

4 ` 5 }; 6 7 let UserDetail = { 8 template:` 9

用户详情

10 `,11 };12 13 let UserChange = {14 template:`15

修改用户信息

16 `,17 };18 19 let App = {20 template:`21
22
首页
23
用户详情
24
修改用户信息
25
26
27 `28 };29 30 let router = new VueRouter({31 routes:[32 {33 'name':'home',34 'path':'/',35 'component':Home,36 },37 {38 'name':'user_detail',39 'path':'/user_detail',40 'component':UserDetail,41 },42 {43 'name':'user_change',44 'path':'/user_change/:user_id',45 'component':UserChange,46 },47 ]48 });
2.5 VueRouter之路由参数的实现原理
1         this.$router.params2         this.$router.query
2.6 VueRouter之子路由
1      let Home = { 2           template: ` 3               
4   

欢迎

5   
6   ` 7   }; 8 9 let Phone = {10 template: `11
12

手机品牌

13
华为
14
一加
15 16
17
18 `,19 };20 let HuaWei = {21 template: `22
23

华为手机

24
25 `,26 };27 let OnePlus = {28 template: `29
30

一加手机

31
32 `,33 34 let App = {35 template: `36
37
首页
38
手机品牌
39 40
41
42 `,43 };44 45 let router = new VueRouter({46 routes: [47 {48 'name': 'home',49 'path': '/',50 'component': Home,51 },52 {53 'name': 'phone',54 'path': '/phone',55 'component': Phone,56 'children': [57 {58 'name':'huawei',59 'path': 'huawei',60 'component': HuaWei,61 },62 {63 'name':'oneplus',64 'path': 'oneplus',65 'component': OnePlus,66 },67 ],68 69 },70 ]71 });
2.7 VueRouter之子路由重定向
1     let router = new VueRouter({ 2             routes: [ 3                 { 4                     name: 'home', 5                     path: '/', 6                     component: Home, 7                 }, 8                 { 9                     name: 'login',10                     path: '/login',11                     component: Login12                 },13                 {14                     name: 'pay',15                     path: '/pay',16                     redirect: '/login',17                     component: Pay,18                 },19             ]20         });
2.8 VueRouter之子路由的钩子函数
1     let router = new VueRouter({ 2             routes: [ 3                 { 4                     name: 'home', 5                     path: '/', 6                     component: Home, 7                 }, 8                 { 9                     name: 'login',10                     path: '/login',11                     component: Login12                 },13                 {14                     name: 'pay',15                     path: '/pay',16                     meta: { required_login: true },17                     component: Pay,18                 },19             ]20         });21 22         // 通过router对象的beforeEach(function(to, from, next))23         router.beforeEach(function (to, from, next) {24            console.log("to: ", to);25            console.log("from: ", from);26            console.log("next: ", next);27            if ( to.meta.required_login ) {28                next('/login');29            } else {30                next();31            }32         });
2.9 VueRouter之子路由的去 # 号
1      let router = new VueRouter({ 2             mode:'history', 3             routes: [ 4                 { 5                     name: 'home', 6                     path: '/', 7                     component: Home, 8                 }, 9                 {10                     name: 'login',11                     path: '/login',12                     component: Login13                 },14                 {15                     name: 'pay',16                     path: '/pay',17                     component: Pay,18                 },19             ]20         });
 

转载于:https://www.cnblogs.com/xjmlove/p/10268118.html

你可能感兴趣的文章
管道,数据共享,进程池
查看>>
CSS
查看>>
[Cypress] Stub a Post Request for Successful Form Submission with Cypress
查看>>
UNITY在VS中调试
查看>>
SDUTOJ3754_黑白棋(纯模拟)
查看>>
Scala入门(1)Linux下Scala(2.12.1)安装
查看>>
如何改善下面的代码 领导说了很耗资源
查看>>
php中的isset和empty的用法区别
查看>>
Android ViewPager 动画效果
查看>>
把word文档中的所有图片导出
查看>>
浏览器的判断;
查看>>
ubuntu 18.04取消自动锁屏以及设置键盘快捷锁屏
查看>>
Leetcode 589. N-ary Tree Preorder Traversal
查看>>
机器学习/深度学习/其他开发环境搭建记录
查看>>
xml.exist() 实例演示
查看>>
判断是否为空然后赋值
查看>>
zabbix监控日志文件
查看>>
正则表达式
查看>>
pip install torch on windows, and the 'from torch._C import * ImportError: DLL load failed:' s...
查看>>
java基础(一):我对java的三个环境变量的简单理解和配置
查看>>