vue Mixins混入选项操作

Mixins一般有两种用途:

1、在你已经写好了构造器后,需要增加方法或者临时的活动时使用的方法,这时用混入会减少源代码的污染。

2、很多地方都会用到的公用方法,用混入的方法可以减少代码量,实现代码重用。

Mixins的基本用法:

我们现在有个数字点击递增的程序,假设已经完成了,这时我们希望每次数据变化时都能够在控制台打印出提示:“数据发生变化”。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script type="text/javascript" src="./assets/js/vue.min.js"></script>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Mixins Option Demo</title>
</head>
<body>
    <!-- 例子:我们现在有个数字点击递增的程序,假设已经完成了,这时我们希望每次数据变化时都能够在控制台打印出提示:“数据发生变化”. -->
    <h1>Mixins Option Demo</h1>
    <hr>
    <div id="app">
        <p>{{ num }}</p>
        <p><button @click="add">增加数量</button></p>
    </div>

    <script type="text/javascript">
    // 全局混入的执行顺序要前于混入和构造器里的方法。
    Vue.mixin({
        updated:function(){
            console.log('我是全局被混入的');
        }
    })

    var addLog = {
        updated: function() {
            console.log("数据发生变化,变化成"+this.num+".");
        }
    }
    var app = new Vue({
        el: '#app',
        data: {
            num: 1
        },
        methods: {
            add: function () {
                this.num++;
            }
        },
        updated: function(){
            console.log("构造器里的updated方法。")
        },
        mixins:[addLog] //混入
    })

    // 注意:
    // 从执行的先后顺序来说,都是混入的先执行,然后构造器里的再执行,需要注意的是,这并不是方法的覆盖,而是被执行了两边。
    // 当混入方法和构造器的方法重名时,混入的方法无法展现,也就是不起作用。

    </script>
    
</body>
</html>

当点击增加数量按钮,num数值会发生变化,

运行界面:

从执行的先后顺序来说,都是混入的先执行,然后构造器里的再执行,需要注意的是,这并不是方法的覆盖,而是被执行了两遍。全局混入的执行顺序要前于混入和构造器里的方法。

因此mixins执行顺序:

(1)全局混入的执行

(2)局部混入的执行

(3)构造器里的执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值