91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中混入指的是什么

發布時間:2020-12-02 11:22:01 來源:億速云 閱讀:231 作者:小新 欄目:web開發

小編給大家分享一下vue中混入指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

定義:混入是一種分發Vue組件中可復用功能非常靈活的方式。混入對象可以包含任意組件選項。當組件使用混入對象時,所有混入對象的選項將被混入該組件本身的選項。

例子:

//定義一個混入對象
var myMixin={
    created:function(){
        this.hello();
    },
    methods:{
        hello:function(){
            console.log('hello from mixin');
        }
    }
}
//定義一個使用混入對象的組件
var Component = Vue.extend({
    mixins:[myMixin]
})
var component = new Component();=>hello from mixin

選項合并

當組件和混入對象含有同名選項時,這些選項將以恰當的方式混合。
比如,數據對象在內部會進行遞歸合并,在和組件的數據發生沖突時以組件數據優先。

var mixin ={
    data:function(){
        return{
            messageL:'hello',
            foo:'abc'
        }
    },
    created(){
        console.log('混入對象的鉤子被調用')
    }
}
new Vue({
    mixins:[mixin],
    data:function(){
        return{
            message:'goodbye',
            bar:'def
        }
    },
    created:function(){
        console.log('組件鉤子被調用')
        console.log(this.$data);
        // => { message: "goodbye", foo: "abc", bar: "def" }
    }
})

值為對象的選項,例如methods,components和directives,將被混合為同一個對象。兩個對象鍵名沖突時,取組件對象的鍵值對。

var mixin={
    methods:{
        foo:function(){
            console.log('foo')
        },
        conflicting:function(){
            console.log('from mixin')
        }
    }
}
var vm = new Vue({
    mixins:[mixin],
    methods:{
        bar:function(){
            console.log('bar')
        },
        conflicting:function(){
            console.log('from self')
        }
    }
})
vm.foo()//foo
vm.bar()//bar
vm.conflicting()//form self

全局混入

也可以全局注冊混入對象。注意使用!一旦使用全局混入對象,將會影響到所有之后創建的Vue實例。使用恰當時,可以為自定義對象注入處理邏輯。

//為自定義的選項myOption注入一個處理器。
Vue.mixin({
    creted:function(){
        var myOption = this.$options.myOption;
        if(myOption){
            console.log(myOption)
        }
    }
})
new Vue({
    myOption:'hello'
})

謹慎使用全局混入對象,因為會影響到每個單獨創建Vue實例(包括第三方模板)。大多數情況下,只應當應用于自定義選項,就像上面示例一樣。也可以將其用作Plugins以避免產生重復作用。

自定義選項合并策略

自定義選項將使用默認策略,即簡單的覆蓋已有值。如果想讓自定義選項以自定義邏輯合并,可以向Vue.config.optionMergeStrategies添加一個函數:

Vue.config.optionMergeStrategies.myOption=function(toVal,fromVal){
    return mergedVal
}

對于大多數對象選項,可以使用methods的合并策略:

var strategies = Vue.config.optionMergeStrategies;
strategies.myOption = strategies.methods

看完了這篇文章,相信你對vue中混入指的是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安阳县| 苗栗县| 婺源县| 山东| 武功县| 南投县| 郯城县| 昌乐县| 上蔡县| 邯郸县| 娄底市| 磴口县| 沂水县| 青神县| 元江| 瓦房店市| 新乡县| 长葛市| 广东省| 雷波县| 金阳县| 武隆县| 丹江口市| 大新县| 金堂县| 峡江县| 安义县| 龙井市| 全南县| 阳高县| 贡山| 邛崃市| 青冈县| 思南县| 五大连池市| 平阳县| 龙陵县| 冀州市| 吉水县| 双牌县| 合水县|