VueX的模块化辅助函数,混入对象

316 阅读1分钟

VueX模块化辅助函数

     先引入使用的模块化辅助函数
    import {mapState, mapMutations,mapGetters,mapActions} from 'vuex'
    
          computed:{
            ...mapState('caA',['str']),
            //'caA'就是模块名   str是里data里的
            //如果重名可以使用 ...mapState('caA',{ac:'str'})以免造成干扰
           
            ...mapGetters('caA',['getstr']),
            swiper() {
              return this.$refs.mySwiper.$swiper;
            },
          },

          methods: {
            ...mapMutations('caA',['CHANGE']),
            ...mapActions('caA',['getchange']),
          },
           
           解构出来的属性方法可以直接使用

image.png

image.png

vue.js混入

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

局部混入:

新建一个js文件

image.png

在组件中引入

image.png

组件中直接使用

image.png

当组件和混入对象含有同名选项时,这些选项将以恰当的方式进行“合并”。 比如,数据对象在内部会进行递归合并,并在发生冲突时以组件数据优先

同名钩子函数将合并为一个数组,因此都将被调用。另外,混入对象的钩子将在组件自身钩子之前调用。


全局混入

直接在main.js中引入即可

image.png