Неожиданные пустые строки при переносе JavaScript с Babel 7.2.2 и preset-env

Я получаю различные неожиданные пустые строки, когда я передаю фрагмент JavaScript с Babel. Вот исходный код:

/**
 * Header.
 */
function header() {
  const header = 'header';
  console.log(header);
};

/**
 * Navigation.
 */
function navigation() {
  const navigation = 'navigation';
  console.log(navigation);
};

И вот что я получаю после того, как перенесу это:

"use-strict";

/**
 * Header.
 */
function header() {
    var header = 'header';
    console.log(header);
}

;
/**
 * Navigation.
 */

function navigation() {
    var navigation = 'navigation';
    console.log(navigation);
}

;

Обратите внимание на пустые строки перед точкой с запятой и после второго комментария функции.

зависимости:

"devDependencies": {
    "@babel/cli": "^7.2.3",
    "@babel/core": "^7.2.2",
    "@babel/preset-env": "^7.2.3"
}

.babelrc

{
    "presets": ["@babel/preset-env"]
}

Вопрос в том, как получить чистый вывод без этих пустых строк.

Интересно, что если вы поместите тот же фрагмент в https://babeljs.io/repl он не выведет пустых строк.

Обновить

Как предположил Феликс Клинг, после удаления точек с запятой я получаю следующее:

"use strict";

/**
 * Header.
 */
function header() {
  var header = 'header';
  console.log(header);
}
/**
 * Navigation.
 */


function navigation() {
  var navigation = 'navigation';
  console.log(navigation);
}

0 ответов

Другие вопросы по тегам