Я только что начал использовать babel с grunt-babel в своем приложении. Но я встречаю некоторое поведение я хочу избежать:grunt-babel разрывает форматирование файла (новые строки и пробелы)
Перед столпотворением:
(function() {
'use strict';
angular
.module('app')
.controller('Ctrl', Ctrl);
Ctrl.$inject = ['$stateParams'];
function Ctrl($stateParams) {
}
})();
После столпотворения:
(function() {
'use strict';
angular.module('app.standingOrder').controller('Ctrl', Ctrl);
Ctrl.$inject = ['$stateParams'];
function Ctrl($stateParams) {}
})();
Моей черновой задачи выглядит следующим образом:
babel: {
options: {
sourceMap: false,
blacklist: ['strict']
},
dist: {
files: [
{
src: [ 'src/**/*.js' ],
cwd: '<%= build_dir %>',
dest: '<%= build_dir %>',
expand: true
}
]
}
},
Обратите внимание, что babel удаляет пустые строки, добавляет/удаляет пробелы, которые прерывают предыдущее форматирование.
Есть ли способ избежать этого и сохранить мое форматирование?
вы можете попробовать прохождение 'retainLines' опционам в хрюкать. https://babeljs.io/docs/usage/options/ «это приведет к дурацкому коду, но будет полезно для сценариев, где вы не можете использовать исходные карты». – azium
Почему вы хотите сохранить форматирование? Он должен быть достаточно хорош, чтобы отлаживать с помощью точек останова то, как он формально формируется. – azium
Одна из причин - слишком легко отслеживать номера линий в зоне покрытия кода. Вторая причина заключается в том, чтобы доказать моим коллегам, которые не используют синтаксис ES6, что Babel никак не повлияет на их код. –