Babel 编译错误 SyntaxError: Unexpected token when using spread operator

Posted

技术标签:

【中文标题】Babel 编译错误 SyntaxError: Unexpected token when using spread operator【英文标题】:Babel compilation error SyntaxError: Unexpected token when using spread operator 【发布时间】:2019-08-14 17:45:31 【问题描述】:

我正在使用最新版本的节点,但是当我尝试使用扩展运算符 babel 时,即使在我安装 @babel/plugin-proposal-object-rest-spread 之后也会引发“意外”令牌

  Items = () => 
    return Item.find().then( items => 
        return items.map( item => 
            return 
                ...item._doc,
                 _id: item.id,
                date: new Date(item.date).toISOString()
            ;
        )
    ).catch(e => 
        throw e
    )

【问题讨论】:

【参考方案1】:

要支持扩展运算符,您需要在基础项目中安装 transform-object-rest-spread 插件

npm install --save-dev babel-plugin-transform-object-rest-spread
// or 
yarn add babel-plugin-transform-object-rest-spread --dev

然后在你的项目目录下创建一个.babelrc文件


  "plugins": ["transform-object-rest-spread"]

如果你已经添加了这个插件,像这样


  "plugins": ["XXX", "YYY", .... ,"transform-object-rest-spread"]

【讨论】:

以上是关于Babel 编译错误 SyntaxError: Unexpected token when using spread operator的主要内容,如果未能解决你的问题,请参考以下文章

Webpack Babel 加载错误 - Uncaught SyntaxError: Unexpected token import [重复]

Webpack - Babel - 解析 JSX: SyntaxError: Unexpected token

SyntaxError: Unexpected token import Webpack 2 Babel 6 Reactjs

babel watch SyntaxError: Unexpected token

ES6编译问题SyntaxError: Unexpected token import

babel无法识别jsx语法... SyntaxError:意外的令牌(25:1)[重复]