Почему опция babIn-plugin-transform-modules-commonjs noInterop не удаляет свойство __esModule? - PullRequest
0 голосов
/ 04 июля 2019
import PI from "./pi";

export function surface(radius) {
  return PI * radius * radius / 2.0;
}

компилируется в:

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.surface = surface;

var _pi = _interopRequireDefault(require("./pi"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function surface(radius) {
  return _pi.default * radius * radius / 2.0;
}

Если я установлю для параметра noInterop значение true.Новый сгенерированный код:

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.surface = surface;

var _pi = require("./pi");

function surface(radius) {
  return _pi.default * radius* radius/ 2.0;
} 

Почему по-прежнему присутствует вызов Object.defineProperty?

...