美文网首页
vue.js的mixin

vue.js的mixin

作者: 前端架构师陈龙威 | 来源:发表于2020-04-11 10:16 被阅读0次

前言

mixin译为混合,在vue中一般用于公共数据公共方法的提取,如果载入mixin的组件中拥有和mixin一样的变量一般会进行合并,并以组件内优先,包括data,components,directives,created,methods等所有组件。

正文

mixin的常规使用

// /src/mixins/mixin1.js
import Demo from '@/components/Demo'
var mixin1 = {
    data() {
        return {
            msg: '1',
            name: 'tyy',
            isInit: true
        }
    },
    components: {
        Demo
    },
    methods: {
        sendMsg() {console.log(this.msg)},
        sayName() {alert(this.name)},
        changeName() {this.name = 'zhh'}
    },
    created() {
        // 此判断条件的添加是为了让mixin有更好的兼容性
        // 因为mixin与组件兼容的方式是合并,相同的以组件内优先,但对于created你无法做到相同变量,以替换掉mixin中的内容
        // 所有需要增加判断条件选择是执行mixin中的内容还是组件中的内容
        if (this.isInit) {
            console.log('执行mixin1中created初始')
        }
    }
}


// home.vue
<template></template>
<script>
    import Demo2 from '@/components/demo2'
    export default {
        data() {
            msg: '这是home中的msg',
            isInit: false
        },
        components: {
            Demo2
        },
        methods: {
            sendMsg() {
                alert(this.msg)
            }
        },
        created() {
            console.log('执行home中的created初始')
        }
    }
</script>

与component相比

mixin和component功能有些类似,都有提取常用或公用部分作为独立的一部分,但mixin对于内容来说采用的是合并,component对于内容是独立的,仍旧只归属于自己使用。未完待续

相关文章

  • 在 Vue.js 中如何使用mixins

    在 Vue.js 中使用Mixin —— CSS-Trickshttp://zcfy.cc/article/usi...

  • vue2-mixins

    在 Vue.js 中使用Mixin —— CSS-Trickshttp://zcfy.cc/article/usi...

  • vue.js的mixin

    前言 mixin译为混合,在vue中一般用于公共数据公共方法的提取,如果载入mixin的组件中拥有和mixin一样...

  • Vue.js mixin 和 mixins 区别

    mixin ⽤于全局混⼊,会影响到每个组件实例,通常插件都是这样做初始化的,但是这种⽅式会影响到每个组件的 bef...

  • 【译文】关于Mixin

    文章来源:Mixin 主页https://mixin.one/xin About Mixin Mixin is a...

  • MIXIN 白皮书连载之域解读

    Mixin 域 (Mixin Domain)Mixin 域为 Mixin 内核提供资产的分布式账本。这些资产可以是...

  • 混合 mixin

    定义mixin 通过@include 名字 调用mixin mixin使用参数

  • Vue mixin 混入及自定义Vue插件

    一、mixin混入 mixin即合并公共方法: 可以设置通用的方法或者变量外部mixin 如下:全局mixin:V...

  • 《Java编程思想 Generics》读书笔记——Mixin

    何谓Mixin Mixin即mix in,混入的意思。和多重继承类似,但通常混入Mixin的类和Mixin类本身不...

  • SCSS

    变量 mixin mixin 基本用法 mixin 传一个参数 mixin 传多个参数 extend 基础知识 简...

网友评论

      本文标题:vue.js的mixin

      本文链接:https://www.haomeiwen.com/subject/pfbemhtx.html