Есть ли способ избежать использования require ("module"). Default при импорте модулей ES6 с экспортом по умолчанию в Babel 7 - PullRequest
0 голосов
/ 16 апреля 2019

У меня есть файл конфигурации, который экспортирует объект JSON по умолчанию

//module.js

export default {
  "test": "abc"
}

Я использую это в другом файле как const json = require("./module"). Объект, в который я попадаю json,

{
   "default": {
     "test": "abc"
   }
}

Ранее я был на Babel 6 и использовал babel-plugin-add-module-exports, чтобы развернуть свойство default при использовании require. Теперь после перехода на Вавилонскую 7 это не работает. Я прочитал в руководстве по миграции Babel 7 , что поддержка плагина add-module-exports прекращена.

Тогда я нашел @babel/plugin-transform-modules-commonjs для этой цели. Но это тоже не дало никаких результатов. Это мой .babelrc конфиг

{
  "presets": [
    "@babel/preset-env"
  ],
  "plugins": [
    [
      "@babel/plugin-transform-react-jsx",
      {
        "pragma": "h"
      }
    ],
    "@babel/plugin-transform-modules-commonjs",
    "@babel/plugin-syntax-dynamic-import",
    "@babel/plugin-proposal-object-rest-spread",
    "@babel/plugin-proposal-function-bind",
    "@babel/plugin-proposal-class-properties"
  ]
}

Разве это невозможно в Вавилоне, начиная с версии 7? Я всегда должен использовать require("module").default?

...