Подтвердить что ты не робот

Как использовать пакет npm с модулем es6 через Webpack и 6to5?

Скажем, я хочу использовать Immutable в моем проекте (или в любом пакете npm). У меня есть npm install ed it, поэтому он находится в node_modules. Конечно, там есть CommonJS. Однако я хочу использовать модули es6 в своем проекте.

Я использую Webpack для компиляции всего этого вместе с 6to5-загрузчиком для работы с синтаксисом модуля es6.

В моем исходном файле я говорю import Immutable from 'immutable'; --- но это вызывает проблему, потому что es6 import ищет экспортированный es6 default, что не так (для Immutable или вероятно, почти любой другой пакет npm). Скомпилированный код выглядит следующим образом: var Immutable = require('immutable')["default"]; --- который, конечно, выдает ошибку, так как нет свойства default для поиска.

Можно ли использовать пакеты npm с модулями es6?

4b9b3361

Ответ 2

Просто понял это. (Решение специфично для конкретного инструмента, но только модули es6 существуют только в том случае, если они включены в инструмент, поэтому я думаю, что достаточно "ответа".)

6to5 default transpilation использует параметр common, что приводит к самой проблеме, которую я схватил выше. Но есть еще один вариант: commonInterop --- который должен был быть построен, чтобы справиться с той ситуацией, с которой я имею дело. См. https://6to5.github.io/modules.html#common-interop

Итак, три ура для 6to5.