这是我的Gruntfile.js
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON("package.json"),
uglify: {
options: {
mangle: true
}
build: {
src: "js/*.js",
dest: "js/min/script.js"
}
}
});
grunt.loadNpmTasks("grunt-contrib-uglify");
grunt.registerTask('default', [uglify]);
};
这是我的package.json - 我已经运行了npm install
,我将在我的Gruntfile中使用所有插件,grunt-contrib-uglify就在其中。
{
"name": "bootbuckle",
"version": "0.1.0",
"engines": {
"node": ">= 0.10.0"
},
"devDependencies": {
"grunt": "~0.4.2",
"grunt-contrib-watch": "~0.5.3",
"grunt-contrib-sass": "~0.6.0",
"grunt-csscomb": "~2.0.1",
"grunt-contrib-htmlmin": "~0.1.3",
"grunt-contrib-imagemin": "~0.4.1",
"grunt-contrib-uglify": "~0.2.7"
}
}
当我在终端中运行grunt
时 - 这是错误
build: {
^^^^^
Loading "Gruntfile.js" tasks...ERROR
>> SyntaxError: Unexpected identifier
Warning: Task "default" not found. Use --force to continue.
Aborted due to warnings.
提前感谢您提供的任何帮助。
EDIT 按照Matti的指导,我插入了一个丢失的逗号,现在正在抛出一个新的错误
Loading "Gruntfile.js" tasks...ERROR
>> ReferenceError: uglify is not defined
Warning: Task "default" not found. Use --force to continue.
Aborted due to warnings.
答案 0 :(得分:30)
你错过了一个逗号:
uglify: {
options: {
mangle: true
}, // <-------
build: {
src: "js/*.js",
dest: "js/min/script.js"
}
}
编辑:由japrescott发布,您必须将uglify任务定义为字符串。
grunt.registerTask('default', ["uglify"]);
答案 1 :(得分:11)
尝试这样
grunt.registerTask('default', ["uglify"]);