[英]Grunt + Babel successfully runs but doesn't do anything
我對grunt / npm很新,但在閱讀了文檔之后。 我自己做了一個package.json
和一個Gruntfile.js
。 這是我的文件夾結構:
/
|- src
|- myfile.es6
|- anotherfile.es6
|- etc.
|- Gruntfile.js
|- package.json
這是我的Gruntfile
:
module.exports = function(grunt) {
require('load-grunt-tasks')(grunt);
grunt.initConfig({
babel: {
options: {
sourceMap: true,
plugins: ['es2015']
},
dist: {
files: [{
expand: true,
cwd: 'src/',
src: ['*.es6'],
dest: 'dist/',
ext: '.js'
}]
}
}
});
grunt.registerTask('default', ['babel'])
};
然后這是我的package.json
:
{
"name": "Cheddar",
"version": "0.2.0",
"devDependencies": {
"babel-preset-es2015": "^6.6.0",
"grunt": "^1.0.1",
"grunt-babel": "^6.0.0"
},
"scripts": {
"test": "grunt --verbose"
}
}
我有我的src/
文件夾,其中包含我的源文件( *.es6
)。 我想用grunt將它們轉換為dist/
目錄。
然后我用npm install
和npm-update --save
安裝了所有依賴項/ babel-cli / grunt-cli /等。
看起來很好,所以我繼續前進並且咕嚕咕嚕:
$ grunt
Running "babel:dist" (babel) task
Done.
$ ls
Gruntfile.js node_modules/ package.json src/
ls
輸出與我運行grunt
之前完全相同的東西。 所以什么都沒有出現。 哪里是我的輸出dist
? 在過去的幾個小時里,這一直困擾着我。 我已經嘗試過安裝babelify
,以及互聯網上的博客上的其他一些修復但唉,沒有任何作用。
嘗試使用,而不是“插件”關鍵字“預設”:
babel: {
options: {
sourceMap: true,
presets: ['es2015']
}
...
}
當我使用你的配置時,grunt似乎出錯了,因為它找不到名為“es2015”的插件 。 在我做出改變后,一切都奏效了。
從自述文件中嘗試一個更為文字的例子:
grunt.initConfig({
babel: {
options: {
sourceMap: true,
presets: ['es2015']
},
dist: {
files: {
'dist/myfile.js': 'src/myfile.es6'
}
}
} });
在你工作之后嘗試在文件下指定*.es6
等。 如果你看一下grunt-babel插件的來源,它可能比人們想象的更有限。
您也可以直接使用npm scripts
並直接指定babel命令行,我認為這比使用grunt更簡單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.