咕噜咕噜的babel挂了下来;t返回错误消息
grunt-babel hangs and doesn't return error message
我正试图用grunt babel将我的es6编译为es5。当我在命令行中输入grunt babel
时,它将挂起并且从不运行babel。它不会返回错误或崩溃,只是挂起。我的Gruntfile.js中还有其他任务,它们运行得很好,所以Gruntfile.js的结构是正确的。
这是我的Gruntfile:
'use strict';
module.exports = function(grunt) {
require('load-grunt-tasks')(grunt);
// initialize Grunt
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
'babel': {
options: {
sourceMap: true,
presets: ['babel-preset-es2015']
},
dist: {
files: {
'js/survey.js': 'build/survey.js'
}
}
},
// create jshint task
jshint: {
dev: {
// tell jshint what check
src: ['Gruntfile.js', 'server.js', 'js/**/*.js', 'models/**/*.js', 'routes/**/*.js', '!build/**', '!tests/client/bundle.js', '!tests/karma_tests/bundle.js', '!js/imageMapResizer.min.js', '!js/kickstart.js', '!js/form-validator.js', '!js/imageMapResizer.js', '!js/jquery-ui.min.js', '!js/jquery.base64.js', '!js/kickstart.js'],
options: {
node: true,
globals: {
describe: true,
it: true,
before: true,
after: true,
beforeEach: true,
afterEach: true,
res: true
}
}
},
mocha: {
// tell mocha where test files are
src: ['tests/test_entry.js', '!tests/client/bundle.js', '!tests/karma_tests/bundle.js'],
options: {
node: true,
globals: {
describe: true,
it: true,
before: true,
after: true,
beforeEach: true,
afterEach: true,
res: true,
expect: true
}
}
},
jasmine: {
src: ['<%= jshint.dev.src %>', '<%= jshint.mocha.src %>'],
options: {
node: true,
jasmine: true,
globals: {
describe: true,
it: true,
before: true,
after: true,
beforeEach: true,
afterEach: true,
expect: true,
react: true
}
}
},
// create jscs task
jscs: {
dev: {
// tell jscs to test the same files as jshint
src: ['<%= jshint.dev.src %>', '<%= jshint.mocha.src %>']
}
}
},
mocha: {
// tell mocha where the test file is
src: ['tests/test_entry.js'],
options: {
node: true,
globals: {
describe: true,
it: true,
before: true,
after: true,
beforeEach: true,
afterEach: true,
res: true,
expect: true
}
}
},
// create simplemocha task
simplemocha: {
dev: {
src: ['tests/test_entry.js']
}
}
});
// register linting task
grunt.registerTask('lint', ['jshint:dev', 'jshint:mocha', 'jshint:jasmine']);
// register mocha test task
grunt.registerTask('test', ['simplemocha:dev']);
grunt.registerTask('babel', ['babel']);
grunt.registerTask('default', ['test']);
};
这是我的包.json:
{
"name": "event_site_bootstrap",
"version": "0.1.0",
"description": "",
"main": "server.js",
"scripts": {
"test": "mocha tests/test_entry.js",
"start": "node server.js"
},
"author": "",
"license": "MS-PL",
"dependencies": {
"bcrypt-nodejs": "latest",
"body-parser": "^1.15.0",
"cookie-parser": "^1.4.1",
"dotenv": "^1.2.0",
"eat": "^0.1.1",
"express": "^4.13.4",
"flash": "^1.1.0",
"jquery": "^2.2.1",
"multer": "^1.1.0",
"passport": "^0.3.2",
"passport-http": "^0.3.0",
"sequelize": "^3.19.3",
"sequelize-encrypted": "^0.1.0",
"tedious": "^1.13.2"
},
"devDependencies": {
"babel-cli": "^6.7.5",
"babel-core": "^6.7.6",
"babel-polyfill": "^6.7.4",
"babel-preset-es2015": "^6.6.0",
"babylon": "^6.7.0",
"chai": "^3.2.0",
"chai-http": "^1.0.0",
"cli-color": "^1.1.0",
"colors": "^1.1.2",
"expect": "^1.9.0",
"grunt": "^0.4.5",
"grunt-babel": "^6.0.0",
"grunt-cli": "^0.1.13",
"grunt-contrib-jshint": "^0.11.3",
"grunt-jscs": "^2.1.0",
"grunt-mocha-cli": "^2.0.0",
"grunt-simple-mocha": "^0.4.0",
"load-grunt-tasks": "^3.5.0",
"mocha": "^2.3.4"
}
}
babelrc看起来是这样的:
{
"presets": ["es2015"]
}
从昨天起,我就一直在尝试解决这个问题,但如果没有错误消息,很难知道问题是什么。我使用babel作为字符串,但我也尝试过不使用引号,它的效果完全相同。我也尝试过将presets: ['babel-preset-es2015']
添加到'babel'
下的选项中,但没有改变任何内容。
如果您需要更多信息或想查看其他文件,请告诉我。提前感谢您的帮助!
找到了!删除线路
grunt.registerTask('babel', ['babel']);
它会导致一个无限循环。您已经有一个名为babel
的任务,所以这行只是用一个无限任务重新定义它。
此外,您可能希望'js/survey.js': 'build/survey.js'
为'build/survey.js': 'js/survey.js'
。格式为target: source
相关文章:
- CKFinder 3为所选文件返回错误的URL
- WebView返回错误的window.innerHeight
- 使用ajax上传的文件返回错误,但使用c#在asp.net的服务器端正常提交的文件
- DreamFactory REST API POST休息/用户/会话请求总是在IE9中返回错误
- sqlite查询返回错误-can'我不知道为什么
- Javascript返回错误的Date值(NodeJS)
- javascript getDate getMonth返回错误的月份
- 函数返回错误'令牌{'
- 为什么我在Cloud9中的http请求总是返回错误
- 当jQuery返回错误时,如何在jQuery中重新发送ajax请求
- ontouchend-ios返回错误的坐标
- node.js mongojs findOne回调返回错误为null
- jQuery Ajax+经典ASP返回错误'意外的输入结束'
- 如果URL's链接返回错误
- 时刻.js时区值返回错误的时间戳
- 简单的jquery不起作用,并返回错误
- 在回调返回错误中带有点的 JSONP
- 在页面发布到服务器并返回错误后保留 javascript 更改
- web2py服务器返回错误,但已提交查询
- Javascript错误-左移位返回错误的输出