Babel-maven-плагин, не переносящий оператор распространения в ES5

0

Вопрос

Я использую инструментарий DOJO, и после обновления для использования компилятора закрытия я заметил, что мне нужно перейти на ES5, прежде чем утилита сборки dojo выполнит свою работу, чтобы воспользоваться преимуществами более новых функций ES6+.

Поэтому я использую babel-maven-plugin для достижения этой цели.

Все работает нормально, за исключением того, что ...spread оператор не выполняет транспонирование.

Нужно ли мне загружать @babel/preset-env пакет, а также для установки preset вариант? или есть какой-то вариант, которого мне не хватает?

babeljs ecmascript-6 transpiler
2021-11-22 15:35:35
1

Лучший ответ

0

После дальнейшего обнаружения нет необходимости загружать какой-либо предустановленный пакет.

babel-standalone принимает предустановленные параметры через свой API, как определено здесь, и используется в плагине babel-maven здесь.

Параметр предустановки не передается в API Babel, как определено в .babelrc конфигурационный файл. Он передается без preset- префикс. Поэтому, чтобы получить @babel/preset-env предустановленная опция, которую вам нужно просто ввести env.

Итак, чтобы завершить это, вот общие предустановки и то, как вы будете передавать их в API:

  • @babel/preset-env --> env
  • @babel/preset-react --> react
  • @babel/preset-flow --> flow
  • @babel/preset-typescript --> typescript

Поэтому для того, чтобы использовать babel-maven-plugin Мне нужно настроить pom.xml следующим образом:

<plugin>
    <groupId>com.jarslab.maven</groupId>
    <artifactId>babel-maven-plugin</artifactId>
    <version>1.6</version>
    <executions>
        <execution>
            <id>js-transpile</id>
            <phase>process-resources</phase>
            <goals>
                <goal>babel</goal>
            </goals>
            <configuration>
                <verbose>true</verbose>                                  
                <babelSrc>./js/babel/babel.min.js</babelSrc>
                <sourceDir>./js</sourceDir>
                <targetDir>./js</targetDir>
                <presets>env</presets>
            </configuration>
        </execution>
    </executions>
</plugin>
2021-11-30 15:39:28

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................