在项目开发的时候,常会碰到这样的一种现象:有两个组件非常相似,比如较为熟悉的Modal
、Tooltip
和Popover
,它们都具有同样的基本函数,而且它们之前也有足够的不同。很多时候,就让人很难做出选择:是把它们拆会成多个不同的组件呢?还是只使用一个组件,创建足够的属性来改变不同的情况。
这些解决方案都不够完美。如果拆会成多个组件,就不得不冒着如果功能变动你要在多个文件中更新它的风险。另一方面,太多的属笥会很快变得混乱,难维护,甚至对于组件开发者自已面言,也是件难事。
在Vue中,对于这样的场景,官方提供了一种叫混入(mixins
)的特性。使用mixins
允许你封装一块在应用的其他组件中都可以使用的函数。如果被正确的使用,他们不会改变函数作用域外部的任何东西,所以多次执行,只要是同样的输入,总是能得到一样的值。
既然Vue的mixins
这么优秀,那应该怎么使用呢?今天我们的目的就是学习如何在Vue的项目中使用mixins
。
参考资料:
https://www.w3cplus.com/vue/vue-mixins.html
https://www.w3cplus.com/vue/practical-use-of-components-and-mixins-in-vue-js.html