九vue mixins 的用法

Posted gunelark

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了九vue mixins 的用法相关的知识,希望对你有一定的参考价值。

vue中mixins个人理解就是定义一些公用的比较常用的方法,类似我们vue中将一些常用的组件也会抽离出来做成一个公共组件一样,只不过vue中mixins是定义的是法或者计算属性,然后将其混入(合并)到各个组件中使用,方便管理与统一修改。下面举例一些简单的引用用于自己理解和记忆:

  • 先定义一个mixins
// 创建一个需要混入的对象 
export const mixinHello = 
    created() 
        this.hello();
    ,
    methods: 
        hello() 
            console.log(‘Hello‘);
        
    
;
  •  在自己的组件中使用
import myMixin from ‘./../assets/js/mixin‘;
export default 
    mixins:[myMixin],
    name: ‘hello‘,
    data () 
        return 
            msg: ‘Welcome to Your project‘
        
    

 

这样输出是结果是怎样的呢?

相当于我们自己的组件是这样子的:

export default 

    name: ‘hello‘,
    data () 
        return 
            msg: ‘Welcome to Your project‘
        
    ,
 created() 
        this.hello();
    ,
    methods: 
        hello() 
            console.log(‘Hello‘);
        
    

注意:

  1. 如果mixin里面有一个created,我们自己的组件里面也有一个created,代码执行是先执行mixin里面的再执行我们自己组件的created,换句话说就是把所有created中的逻辑合并,这里注意不能出现相同的逻辑,不然我们自己组件的就会覆盖掉mixin中的
  2. 对于methods,component如果里面都有相同的方法,我们自己的组件中的方法将会覆盖掉mixin中的方法。一切按照我们组件优先的原则
 

明白了吧?是不是很简单哦~~

以上是关于九vue mixins 的用法的主要内容,如果未能解决你的问题,请参考以下文章

vue.js 中的mixins 的用法

vue.js 中的mixins 的用法

vue-elem-stylus 的mixin用法

scss @mixin用法,画一个彩色圆点,vue filter 过滤颜色

vue 中timestamp的用法

vue-property-decorator用法介绍