mixins 是一个 js 对象,它可以包含我们组件中JS部分的任意功能选项,如:data、components、methods、created、computed 等等。我们只要将公用的功能以对象的方式传入 mixins 选项中,当组件使用 mixins 对象时所有 mixins 对象都将被混入该组件中。
import { mapGetters } from 'vuex'
export default {
computed: {
...mapGetters('m_cart', ['total'])
},
onShow() {
// 第一次打开页面就显示 tabber 的上标
this.setBadge()
},
methods: {
setBadge() {
uni.setTabBarBadge({
//第三个tabber的上标
index: 2,
// tabber的上标只能是字符串
text: this.total + ''
})
}
}
}
使用时只需要导入页面,然后挂载 mixins 为组件
import badgeMix from '@/mixins/tabbar-badge.js'
export default {
mixins: [badgeMix],
data() {
return {
};
}
}
vuex: 用来做状态管理的,里面定义的变量在每个组件中均可以使用和修改,修改变量会影响所有引用的组件
Mixins: 可以定义共用的变量,在每个组件中使用,引用组件中之后,各个变量是相互独立的,值的修改只影响当前组件,不会影响其它组件