在某些情况下,Babel 不会转换"导入"语句



单行文件:

export * from 'a.js'

转换为:

'use strict';
import _Object$defineProperty from 'babel-runtime/core-js/object/define-property';
import _Object$keys from 'babel-runtime/core-js/object/keys';
Object.defineProperty(exports, "__esModule", {
  value: true
});
...

其中有趣的部分是import ...语句,它显然失败了(在浏览器环境中)。我包含了transform-es2015-modules-commonjs插件(在es2015预设中显式和隐式),但不知何故,它无法转换import语句(它在应用程序的其余部分中工作)。我做错什么了吗?这是babel插件生态系统中的一个错误吗?

我使用了多个.babelrc设置(插件排序、显式/隐式commonjs插件…),但结果仍然相同。样品.babelrc设置

  "plugins": ["transform-runtime", "transform-es2015-modules-commonjs"],
  "presets": ["es2015", "stage-0", "react"],

我正在使用最新版本的插件。

您可以将其分为两个步骤,

import a from 'a.js'
export default a;

最新更新