vue里的mixin(混入),我在官网看了两三遍,还是不大理解,不为难自己,直接百度看看有没有大神能浅入浅出的讲讲,被我找到了,于是有了这篇记录文。
-
定义一个mixin可以存放一些公共变量和方法。与vuex不同的是,当在组件中使用mixin时,变量修改不会影响到原mixin,也就是说mixin可以在不同组件里使用并被修改,而互不影响。
-
当在methods这种后面直接大括号(代表对象)里写方法的,如果组件和mixin都在methods里定义的方法冲突,会执行组件里定义的方法。 当在钩子函数中定义的方法,不存在冲突,会先执行mixin里的混入方法。
-
mixin和公共组件的区别就是:公共组件是子组件,即使是父子,也要明算账;而mixin就是入乡随俗,来了就是一家人,关键它也不空手来,还带了变量和方法来给父组件。
-
mixin中可以有异步方法,但是要把异步方法作为返回值来return,只return结果是没有用滴,是拿不到滴。
methods:{
async func(){
let result = await new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve()
},1000)
})
return result
},
} // 模拟发请求