首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用电子webpack开发时的decoratorsBeforeExport错误

使用电子webpack开发时的decoratorsBeforeExport错误
EN

Stack Overflow用户
提问于 2019-01-27 21:33:38
回答 1查看 1K关注 0票数 0

我想把我的反应项目转换成一个电子应用程序。由于该项目是通过webpack捆绑,我开始使用电子webpack的建设。运行electron-webpack dev时,/main/renderer都不会正确编译。

控制台日志抛出解码器插件错误

代码语言:javascript
复制
The decorators plugin requires a 'decoratorsBeforeExport' option,
 whose value must be a boolean. If you want to use the 
legacy decorators semantics, you can set the 'legacy: true' option

所以,为什么不遵循这个明智的建议呢?然后,我更新了我的所有依赖项,并更新了我的.babelrc文件,以添加.babelrc遗留选项(分别为false和true )。

代码语言:javascript
复制
"plugins": [
   ["@babel/plugin-proposal-decorators", {
     "decoratorsBeforeExport": false,
     "legacy": true,
   }],

由于在此之后仍然显示错误,我从_/node_打开plugin-proposal-decorators文件夹,并为选项添加了一个日志。显然,它没有识别我的选项集。我直接尝试从webpack的装载机配置,但问题仍然显示。

我的env

  • 节点: v11.2.0
  • Webpack: v4.29.0
  • @babel/core: v7.0.0
EN

回答 1

Stack Overflow用户

发布于 2019-07-09 11:11:31

这个.babelrc适用于我:

代码语言:javascript
复制
{
  "presets": [
    "@babel/preset-react",
    [ "@babel/preset-env", {
      "targets": {
        "browsers": [ "last 1 version" ]
      }
    } ]
  ],
  "plugins": [
    "@babel/plugin-proposal-object-rest-spread",
    ["@babel/plugin-proposal-decorators", { "legacy": true }],
    ["@babel/plugin-proposal-class-properties", { "loose" : true }]
  ]
}

请注意decorators插件是如何先于class-properties的。

不知怎么的,它在非legacy模式下对我不起作用。根据官方文档:loosedecoratorslegacy模式下运行时需要legacy选项

它还指出:

在Babel 7中,变换-装饰师.遗产将是第0阶段的默认插件。(资料来源:https://babeljs.io/docs/en/babel-plugin-transform-decorators.html)

更多信息:Babel 7-解码器转换不适用于babel-加载程序 带babel的简单ES7装饰器

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54393089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档