vue混合html,VueJS混合

混合 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式。混合对象可以包含任意组件选项。当组件使用混合对象时,所有混合对象的选项将被混入该组件本身的选项。

示例

VueJs混合(Mixins)示例

var vm = new Vue({

el: '#databinding',

data: {

},

methods : {

},

});

var myMixin = {

created: function () {

this.startmixin()

},

methods: {

startmixin: function () {

alert("Welcome to mixin example");

}

}

};

var Component = Vue.extend({

mixins: [myMixin]

})

var component = new Component();

在浏览器中打开上面示例文件,效果如下 -

ed3b362d18332e4d370cd31fab21e2f4.png

当一个混合(mixin)和一个组件包含重叠选项时,它们将被合并,如下例所示。

VueJs Instance

var mixin = {

created: function () {

console.log('mixin called')

}

}

new Vue({

mixins: [mixin],

created: function () {

console.log('component called')

}

});

现在mixin和vue实例创建了相同的方法。下面是在控制台中看到的输出。如下所见,vue和mixin的选项将被合并。

8026a6bc8c5d2f74d0d5ed6462e68f04.png

如果碰巧在方法中有相同的函数名,那么主vue实例将会优先。

示例

创建一个文件:mixins-2.html -

VueJs混合(Mixins)示例

var mixin = {

methods: {

hellworld: function () {

console.log('In HelloWorld');

},

samemethod: function () {

console.log('Mixin:Same Method');

}

}

};

var vm = new Vue({

mixins: [mixin],

methods: {

start: function () {

console.log('start method');

},

samemethod: function () {

console.log('Main: same method');

}

}

});

vm.hellworld();

vm.start();

vm.samemethod();

如上面代码中,mixin有一个方法属性,其中定义了helloworld和相同的方法函数。 同样,vue实例也有一个方法属性,在这个属性里面又定义了两个方法start和samemethod。

以下每个方法都被调用。

vm.hellworld(); // In HelloWorld

vm.start(); // start method

vm.samemethod(); // Main: same method

如上所示,已经调用了helloworld,start和same方法。 同样的方法也存在于mixin中,但优先级将赋予主实例,如下面的控制台所示。

0f512b6e036f3000f6e19609e9c5fe6a.png

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值