博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
006-读书笔记-Vue官网 混合
阅读量:5732 次
发布时间:2019-06-18

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

1.认识混合

  • 混合(mixins)是一种分发Vue组件中可复用功能的非常灵活的方式
  • 混合的作用:抽取多个组件的共同部分,增强组件的可复用性
  • 混合的实质:混合对象类似一个Vue实例,可以包含Vue实例中的任意选项;使用混合对象时,相当于把混合对象的所有选项都注入到了组件中

2.混合的简单使用

2-1 没有使用混合的情况

当组件A中有一个方法methodCommon,组件B中同样有一个方法methodCommon,如果每个组件中都写这个方法,会出现很多重复性代码:

2-2 使用混合优化代码

上面代码中的重复部分,可以抽取一个公共的mixin:

// mixin.jsexport default {  methods: {    methodCommon() {      return 'this is a method ...'    }  }}

然后在每一个组件中引入该mixin.js即可:

通过混合,提高了代码的复用性。

3.混合中的钩子函数

3-1 同名钩子函数都会执行

如果组件A中存在钩子函数,混合中也存在相同的钩子函数,那么两个钩子函数都会执行。

执行顺序是混合中的钩子函数先执行,组件中的钩子函数后执行。

// mixin.jsexport default {  created() {    console.log('mixin created ...')  }}

最终的执行结果:

mixin created ...componentA created ...

3-2 多个混合的钩子函数

多个混合的钩子函数,会根据混合使用的顺序来执行。

mixins: [ 'mixin1', 'mixin2' ]

执行的时候,会先执行mixin1中的钩子函数,再执行mixin2中的钩子函数,最后执行当前组件中的钩子函数。

4.混合中的对象选项

混合中的对象选项,如directives filters components data computed methods等会被混合成一个对象的属性,如果键值对相同,会优先根据组件中的内容进行输出。

// mixin.jsexport default {  data() {    return {      msg: 'mixin msg ...'    }  }}

最终会输出组件A中的msg:componentA msg ...

5.参考内容

转载地址:http://gymwx.baihongyu.com/

你可能感兴趣的文章
ps6-工具的基础使用
查看>>
关于CefSharp.WinForms的学习
查看>>
灵活运用 SQL SERVER FOR XML PATH
查看>>
es 加磁盘扩容
查看>>
linux 参数内核
查看>>
使用Azcopy在Azure上进行HBase的冷热备份还原
查看>>
计组_定点数一位乘_布斯公式
查看>>
linux下使用过的命令总结(未整理完)
查看>>
ES6的一些文章
查看>>
LeetCode 198, 213 House Robber
查看>>
New Year Permutation(Floyd+并查集)
查看>>
Qt编写输入法V2018超级终结版
查看>>
<context:component-scan>详解
查看>>
DS博客作业07--查找
查看>>
[JOI2017] サッカー (Soccer)
查看>>
Git 方法
查看>>
[Python] numpy.nonzero
查看>>
2016-11-29
查看>>
C#反射的坑
查看>>
css3 box-shadow阴影(外阴影与外发光)讲解
查看>>