搜索

首页  >  问答  >  正文

javascript - 关于vuex ...mapActions的问题

我知道...是ES6的扩展运算符。并且可以这样使用

var {a,...b} ={x:1,y:2,z:3};
//a=1 b={y:2,z:3}

但是我实在不理解 在 vue的methods属性中 使用...mapActions()这样的方式 是什么意思。
大神求解答!

黄舟黄舟2813 天前765

全部回复(2)我来回复

  • 黄舟

    黄舟2017-06-12 09:34:30

    mapActions() 返回的是一个对象, 用了 ... 扩展符后,才可以放进一个对象里,和其他组件内定义的 method 在同一个 methods 对象。

    {
        methods: mapActions() // 如果没有其它组件内的定义的方法,可以这样写
    }
    {
        methods: {
            ...mapActions(),// 如果有其他定义的方法
            otherMethod1 () {},
            otherMethod2 () {}
        }
    }

    回复
    0
  • 为情所困

    为情所困2017-06-12 09:34:30

    楼上正解,假设mapActions(),返回的是

    {
        a() {},
        b() {}
    }

    那 ...mapActions(),只不过是把a,b都拿出来跟其他方法放在一起了而已。
    ...代表两种意思,一种是剩余操作符,一种是扩展运算符,你题目里用的那个应该是剩余操作的意思,而...mapActions才是扩展运算符。
    详情: https://developer.mozilla.org...

    回复
    0
  • 取消回复