我不确定我是否通过passPerPreset

时间:2018-06-09 02:39:16

标签: javascript webpack babeljs babel

目前我遇到问题transform-runtimeexports * from ...更改为import语句。

使用以下配置修复此问题。

passPerPreset          : true,
cacheDirectory         : true,
plugins                : ['transform-decorators-legacy'],
presets: [
  {
    plugins            : ['transform-runtime'],
  },
  {
    passPerPreset      : false,
    presets            : ['es2015', 'react', 'stage-0'],
  },
]

我的理解是passPerPreset单独运行每个预设,所以当它到达一个节点时,它将运行transform-runtime,然后下一次运行底部的预设集。这解决了这个问题,因为第一个传递选择了所有export *将它们更改为import s然后在下一个传递es2015将这些转换为require语句。

现在我的问题是transform-decorators-legacy是否在当前位置的两个传球上都有效?如果我的上述探索是正确的,那么为什么我不能把它作为transform-runtime的兄弟姐妹呢:

passPerPreset          : true,
cacheDirectory         : true,
presets: [
  {
    plugins            : ['transform-decorators-legacy', 'transform-runtime'],
  },
  {
    passPerPreset      : false,
    presets            : ['es2015', 'react', 'stage-0'],
  },
]

感谢您的帮助。我只是想更深入地了解巴贝尔。

0 个答案:

没有答案