The plugin helps us set
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = 'foo';
module.exports = exports['default'];
So we can only usemod = require('xx') but not mod = require('xx').default any more if we don't set "addDefaultProperty" to true.
However, both
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } in Babel and
__webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
in webpack imports a module harmonly depending on whethermodule.__esModule is true which may import undefined from module.default.
So will it better set "__esModule" to false when "addDefaultProperty" is false in order to tell Babel and webpack import module from module.exports instead of module.exports.default?
The plugin helps us set
So we can only use
mod = require('xx')but notmod = require('xx').defaultany more if we don't set "addDefaultProperty" to true.However, both
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }in Babel andin webpack imports a module harmonly depending on whether
module.__esModuleis true which may importundefinedfrommodule.default.So will it better set "__esModule" to false when "addDefaultProperty" is false in order to tell Babel and webpack import module from
module.exportsinstead ofmodule.exports.default?