V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gap
V2EX  ›  Vue.js

babel 最新的 stage-0 都装了,还是无法支持...rest parameters 的语法

  •  
  •   gap · 2017-04-11 18:16:35 +08:00 · 2269 次点击
    这是一个创建于 2786 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想用最新的...rest parameters 的语法,都说 stage-2 就能支持,但从 3 一直试上来,都装到 0 了还是不行啊,报错 Parsing error: Unexpected token ..

      methods: {
        ...mapActions([
          'updateUser'
        ]),
    

    babelrc 配置也精简到最低了

    {
      "presets": [
        "es2015",
        "stage-0"
      ]
    }
    
    8 条回复    2017-04-12 10:28:04 +08:00
    xinnix
        1
    xinnix  
       2017-04-11 19:02:42 +08:00   ❤️ 1
    不知阁下 webpack 里 loader 配置正确没,另外应该是 stage-2 支持
    pathen
        2
    pathen  
       2017-04-11 21:15:57 +08:00 via Android   ❤️ 1
    如果 babel 的 config 没有配错,一般是 Webpack 配置写的有问题
    gap
        3
    gap  
    OP
       2017-04-11 21:55:09 +08:00 via iPhone
    @xinnix
    @pathen

    我的 webpack loader 也很简单,请问是漏掉了什么吗?
    loaders: [
    { test: /\.js$/, exclude: [ /node_modules/ ], loader: 'babel'}]
    adspe
        4
    adspe  
       2017-04-11 22:05:17 +08:00   ❤️ 1
    试试

    ```
    rules: [
    { test: /\.(js|jsx)$/, use: 'babel-loader', exclude: /node_modules/ },
    ],
    ```

    我是这样配的
    ferrum
        5
    ferrum  
       2017-04-11 22:11:11 +08:00 via iPhone
    我有个 Vue.js 2.0 的项目也是这样,很奇怪,配置怎么搞都不支持这个运算符,最后还是老老实实地用回原来的。

    不过楼主可以试试在.js 文件内看看这个运算符是否支持,而不是在.vue 文件内。
    gap
        6
    gap  
    OP
       2017-04-11 22:32:23 +08:00
    @adspe 还是不行,简直太奇怪了
    gap
        7
    gap  
    OP
       2017-04-12 08:41:31 +08:00 via iPhone
    @ferrum 请问你最后用的是怎样的写法呢?都通过 this.$store 去取 getter 和 action 吗?
    ferrum
        8
    ferrum  
       2017-04-12 10:28:04 +08:00
    这个叫 object spread operator (对象展开作用符),算是一种语法糖,就不用这种语法糖呗。

    比如原来写成
    `
    methods: {
    ...mapActions([
    'increment',
    }
    `
    这样的,现在写成这样的:
    `
    methods: {
    increment: mapActions(['increment'])['increment']
    }

    `
    我知道这样看起来很蠢,还不如直接$store.dispatch ……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5465 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:36 · PVG 15:36 · LAX 23:36 · JFK 02:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.