轻松玩转VUE 2.0及常用组件

轻松玩转VUE 2.0及常用组件

一、vue
1.vue生命周期
Ⅰ、created =>
作用:编译模板,把data里面的数据和模板成html
应用场景:此时可以提交ajax请求来初始化页面数据,仅仅只是初始化数据,不能操作dom($refs获取不到值)

Ⅱ、mounted =>
作用:挂载完成,也就是模板中的html渲染到了html页面中,此时一般可以做一些ajax操作,mounted只会执行一次!!!
应用场景:ajax请求初始化页面数据,且可以做一些dom操作

Ⅲ、updated =>
作用:页面任意一处改变时,这个钩子会被触发
应用场景:页面数据或者结构变化时,要执行一些判断和DOM操作时使用

  1. 计算属性
    Ⅰ、computed =>
    作用: 封装计算数据的函数(有缓存)
    应用场景: 假设我们有一个性能开销比较大的的计算属性 A ,它需要遍历一个极大的数组和做大量的计算。然后我们可能有其他的计算属性依赖于 A 。如果没有缓存,我们将不可避免的多次执行 A。应用在methods中

Ⅱ、methods =>
作用: 封装计算数据的函数(无缓存)
应用场景: 与computed相反, 当不需要缓存时使用此方法, 应用在html代码中

1.png

3.ref指令
ref 被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs 对象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素; 如果用在子组件上,引用就指向组件实例:


2.png
2.png

4.Mixin混合对象
混合是一种灵活的分布式复用Vue 组件的方式。混合对象可以包含任意组件选项。以组件使用混合对象时,所有混合对象的选项将被混入该组件本身的选项。


3.png
3.png

使用场景: 举个栗子,用户登录判断,一个网站有些页面或者功能(发帖)必须要用户登录后才能进入,这时写一个通用的Mixin对象(用户跳转到登录页面)注入到这些页面或者功能中,被注入的组件就具有了这个功能。

二、vue-router
用 Vue.js + vue-router 创建单页应用,是非常简单的。使用 Vue.js时,我们就已经把组件组合成一个应用了,当你要把 vue-router 加进来,只需要配置组件和路由映射,然后告诉 vue-router 在哪里渲染它们。

  1. 基本用法
    创建Router对象,传入routes对象,routes对应的是一个路由数组。然后把这个对象注入到Vue的入口文件中,所有的子组件中通过<router-link>标签来实现路由跳转,或者也可以使用router对象的push、replace、go方法来跳转(像这样this.$router.push())。

    一、
    4.png
    4.png
    二、
    5.png
    5.png
    三、
    6.png
    6.png
  2. 导航钩子
    正如其名,vue-router 提供的导航钩子主要用来拦截导航,让它完成跳转或取消。有多种方式可以在路由导航发生时执行钩子:全局的, 单个路由独享的, 或者组件级的。

Ⅰ、常用钩子


7.png
7.png

三、vuex
这是vue开发中比较难的一部分。可以看做是一个全局状态管理容器,把需要共享的状态数据存在vuex中(比如最常见的用户信息),当然你也可以把每一个组件的状态都存到这里面,虽然更利于维护(这样就会创建一个状态树,结构清晰明了),但是会大幅度增加开发时间。

8.png
8.png
9.png
9.png

Ⅰ、state的作用就是状态数据存储
Ⅱ、mutations里面的方法是用来改变state,可以使用commit('mutations里指定的方法名','数据')的形式来触发mutations里的方法
Ⅲ、actions主要用来发送ajax请求,因为mutations是一个同步事件,你不能在里面写ajax请求,所以这时引入了actions这个概念. 可以使用dispatch('actions里指定的方法名','数据')的形式来触发actions里的方法,

注意事项:如果项目使用了vuex,官方建议是把所有的ajax异步请求都写入actions
常见问题 : 主要就是异步的问题,例如


11.png
11.png

解决方案:设置300ms左右的定时器或者放入actions中组合成一个promise队列

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容