vue使用vuex的mapGetters , mapActions, mapMutations报错

转自: https://www.tuicool.com/articles/ea2QF3z

在尝鲜vuex2时,发现vuex2增加了 mapGetters 和 mapActions 的方法,借助stage2的 Object Rest Operator 特性,可以写出下面代码:

methods: {
marked,
…mapActions([
‘getArticles’
])
}
但是在借助babel编译转换时发生了报错: BabelLoaderError: SyntaxError: Unexpected token 。

解决方案
在vuex的repo issues中有人提过这样的问题,后来是修改了eslint配置中对 Object Rest Operator 的支持解决了问题,然而我根本没有使用eslint。

接着在babel的issues中搜索这样的报错,原来是我babel预置的转换器是 babel-preset-es2015 ,并不能转换 Object Rest Operator 特性。

解决方法很简单了,可以安装整个stage2的预置器或者安装 Object Rest Operator 的babel插件 babel-plugin-transform-object-rest-spread 。

我选择了安装插件,接着在babel的配置文件 .babelrc 中应用插件:

{
“presets”: [
[“es2015”, { “modules”: false }]
],
“plugins”: [“transform-object-rest-spread”]
}
重启webpack,就不会再有报错了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值