谈谈vue中mixin的一点理解


Posted in Javascript onDecember 12, 2017

 vue中提供了一种混合机制--mixins,用来更高效的实现组件内容的复用。最开始我一度认为这个和组件好像没啥区别。。后来发现错了。下面我们来看看mixins和普通情况下引入组件有什么区别?

     组件在引用之后相当于在父组件内开辟了一块单独的空间,来根据父组件props过来的值进行相应的操作,单本质上两者还是泾渭分明,相对独立。

     而mixins则是在引入组件之后,则是将组件内部的内容如data等方法、method等属性与父组件相应内容进行合并。相当于在引入后,父组件的各种属性方法都被扩充了。

     单纯组件引用:

          父组件 + 子组件 >>> 父组件 + 子组件

     mixins:

          父组件 + 子组件 >>> new父组件 

     值得注意的是,在使用mixins时,父组件和子组件同时拥有着子组件内的各种属性方法,但这并不意味着他们同时共享、同时处理这些变量,两者之间除了合并,是不会进行任何通信的。最开始看到mixins的时候,天真的我似乎看到了一种向下的类似vuex的数据共享方案,心情十分激动啊。

 下面给大家介绍下Vue中的mixin

     一,mixin是什么

mixin文件是一个对象,可以包含vue组件的任意成分。是分发Vue组件可复用功能的非常灵活的方式,当mixin被组件使用时,所有minxin里的属性/方法会与组件里的属性/方法混合。

二,mixin使用

在Vue组件中可以有mixins属性,该属性值类型为数组。将mixin引入,作为mixins数组的元素mixins: [mixin]

组件A应用了mixin,两者的属性如methods,components和directives,将被混合为同一个对象,如果methods,components和directives中有同名的属性,则mixin中的将会被忽略。同名钩子函数会组成数组并都会被调用,并且mixin的钩子函数会比组件的钩子函数先被调用。

总结

以上所述是小编给大家介绍的vue中mixin,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery 分页控件实现代码
Nov 30 Javascript
原来Jquery.load的方法可以一直load下去
Mar 28 Javascript
javascript随机之洗牌算法深入分析
Jun 07 Javascript
使用Browserify配合jQuery进行编程的超级指南
Jul 28 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
Oct 10 Javascript
原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
May 27 Javascript
vue单页应用中如何使用jquery的方法示例
Jul 27 jQuery
Vue 与 Vuex 的第一次接触遇到的坑
Aug 16 Javascript
vue实现双向绑定和依赖收集遇到的坑
Nov 29 Javascript
vue实现滑动超出指定距离回顶部功能
Jul 31 Javascript
Vue实现渲染数据后控制滚动条位置(推荐)
Dec 09 Javascript
微信小程序实现点击导航条切换页面
Nov 19 Javascript
Vue集成Iframe页面的方法示例
Dec 12 #Javascript
微信小程序显示下拉列表功能【附源码下载】
Dec 12 #Javascript
Vue调试神器vue-devtools安装方法
Dec 12 #Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
Dec 12 #Javascript
javascript实现循环广告条效果
Dec 12 #Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
Dec 12 #Javascript
vue2.0 常用的 UI 库实例讲解
Dec 12 #Javascript
You might like
php最简单的删除目录与文件实现方法
2014/11/28 PHP
php json相关函数用法示例
2017/03/28 PHP
php 将json格式数据转换成数组的方法
2018/08/21 PHP
php将字符串转换为数组实例讲解
2020/05/05 PHP
jquery 模式对话框终极版实现代码
2009/09/28 Javascript
EASYUI TREEGRID异步加载数据实现方法
2012/08/22 Javascript
浅谈JavaScript Math和Number对象
2015/01/26 Javascript
js完整倒计时代码分享
2016/09/18 Javascript
JavaScript中浅讲ajax图文详解
2016/11/11 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
详解webpack之scss和postcss-loader的配置
2018/01/09 Javascript
Openlayers实现地图的基本操作
2020/09/28 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
Python入门篇之文件
2014/10/20 Python
Python运算符重载用法实例分析
2015/06/01 Python
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
django之常用命令详解
2016/06/30 Python
详解python中xlrd包的安装与处理Excel表格
2016/12/16 Python
pytorch构建网络模型的4种方法
2018/04/13 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
2018/12/15 Python
Python二维码生成识别实例详解
2019/07/16 Python
Python计算不规则图形面积算法实现解析
2019/11/22 Python
Jupyter notebook如何实现指定浏览器打开
2020/05/13 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
2020/09/24 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
美国在线鲜花速递:ProFlowers
2017/01/05 全球购物
党员教师个人对照检查材料(群众路线)
2014/09/26 职场文书
2014年实习班主任工作总结
2014/11/08 职场文书
2014年护士个人工作总结
2014/11/11 职场文书
考研复习计划
2015/01/19 职场文书
餐厅服务员管理制度
2015/08/05 职场文书
MySQL索引失效的典型案例
2021/06/05 MySQL
5道关于python基础 while循环练习题
2021/11/27 Python