在某些情况下,Babel不会转换'import'语句

问题描述 投票:2回答:1

单行文件:

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"],

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

ecmascript-6 babeljs commonjs
1个回答
0
投票

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

import a from 'a.js'
export default a;
© www.soinside.com 2019 - 2024. All rights reserved.