我刚开始在我的应用中使用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) {}
})();
我的 grunt任务如下所示:
babel: {
options: {
sourceMap: false,
blacklist: ['strict']
},
dist: {
files: [
{
src: [ 'src/**/*.js' ],
cwd: '<%= build_dir %>',
dest: '<%= build_dir %>',
expand: true
}
]
}
},
请注意,babel删除了空行,添加/删除了打破先前格式的空格。
有没有办法避免这种情况并保留格式?
答案 0 :(得分:1)
retainLines
选项会尝试保留您的行号。 https://babeljs.io/docs/usage/options/
我认为源地图可能是最好的选择,但它们需要更多的工作来管理。
您可以使用repl查看babel将会做什么https://babeljs.io/repl/