Grunt uglify 任务开始 blank/idle
Grunt uglify task goes blank/idle
我是 task-运行JS 的新手,这是我第一次尝试使用 G运行tJS。在我的 Gruntfile.js 中,我保留了一些任务,例如 jshint
、cssmin
等。我可以从命令行 运行 它们,但是当我 运行 ` g运行t uglify' 没有响应,光标转到另一行并保持数小时。也没有显示错误消息。
下面是我的相关代码,我尝试了各种 uglify 配置,因为我看到不同的用户提供了不同的属性集
//uglify:{
// options: {
// mangle : {
// except : ['jQuery', 'angular']
// },
// compress: {
// drop_console : true
// },
// banner: '*****Minified file for Pricing Plan*****',
// footer: '*********File ends**********',
// preserveComments: false
// },
// my_target:{
// options: {
// beautify: true,
// files: {
// 'scripts/pp.min.js': ['scripts/pp.js']
// }
// }
// }
//},
uglify: {
options: {
banner: '*****Minified file for Pricing Plan*****'
},
dist: {
src: 'scripts/pp.js',
dest: 'scripts/pp.min.js'
}
},
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('uglify', ['uglify']);
命令行我运行宁grunt uglify
谁能告诉我这里出了什么问题以及纠正它的方法。
如果需要:它是一个 Angular1.x.x 项目
编辑:我尝试安装 uglifyJs 和 运行 uglifyjs
命令。它成功地丑化并缩小了我的代码。那么除了我上面的这些,还有什么需要做的吗?
but when I run `grunt uglify' there is no response, the cursor goes to another line and remains so for hours.
问题:
我认为问题与您注册 uglify
任务的方式有关。下面这行代码:
grunt.registerTask('uglify', ['uglify']); //<-- Issue is here.
如何修复:
使用 grunt.registerTask()
创建 Alias Task 时,避免将 taskName
命名为与 taskList
数组中定义的任何 items/tasks 相同。
grunt.registerTask('minify', ['uglify']); //<-- Correct.
注意: 虽然在上面的示例代码中我已经将 taskName
更改为 minify
它可以是您喜欢的任何有效名称。只需确保您选择的 taskName
不作为 taskList
数组中的一项存在。
您现在通过 CLI 运行 修改后的注册 uglify
任务如下:
$ grunt minify
Gruntfile.js
这里是修改后的 Gruntfile.js
:
module.exports = function(grunt) {
grunt.initConfig({
uglify: {
options: {
banner: '/*****Minified file for Pricing Plan*****/'
// ... <-- Your other options
},
dist: {
src: 'scripts/pp.js',
dest: 'scripts/pp.min.js'
}
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('minify', ['uglify']);
};
(注意:还向横幅字符串添加了正斜杠,以便在结果文件中生成有效的 JavaScript 评论)
我是 task-运行JS 的新手,这是我第一次尝试使用 G运行tJS。在我的 Gruntfile.js 中,我保留了一些任务,例如 jshint
、cssmin
等。我可以从命令行 运行 它们,但是当我 运行 ` g运行t uglify' 没有响应,光标转到另一行并保持数小时。也没有显示错误消息。
下面是我的相关代码,我尝试了各种 uglify 配置,因为我看到不同的用户提供了不同的属性集
//uglify:{
// options: {
// mangle : {
// except : ['jQuery', 'angular']
// },
// compress: {
// drop_console : true
// },
// banner: '*****Minified file for Pricing Plan*****',
// footer: '*********File ends**********',
// preserveComments: false
// },
// my_target:{
// options: {
// beautify: true,
// files: {
// 'scripts/pp.min.js': ['scripts/pp.js']
// }
// }
// }
//},
uglify: {
options: {
banner: '*****Minified file for Pricing Plan*****'
},
dist: {
src: 'scripts/pp.js',
dest: 'scripts/pp.min.js'
}
},
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('uglify', ['uglify']);
命令行我运行宁grunt uglify
谁能告诉我这里出了什么问题以及纠正它的方法。
如果需要:它是一个 Angular1.x.x 项目
编辑:我尝试安装 uglifyJs 和 运行 uglifyjs
命令。它成功地丑化并缩小了我的代码。那么除了我上面的这些,还有什么需要做的吗?
but when I run `grunt uglify' there is no response, the cursor goes to another line and remains so for hours.
问题:
我认为问题与您注册 uglify
任务的方式有关。下面这行代码:
grunt.registerTask('uglify', ['uglify']); //<-- Issue is here.
如何修复:
使用 grunt.registerTask()
创建 Alias Task 时,避免将 taskName
命名为与 taskList
数组中定义的任何 items/tasks 相同。
grunt.registerTask('minify', ['uglify']); //<-- Correct.
注意: 虽然在上面的示例代码中我已经将 taskName
更改为 minify
它可以是您喜欢的任何有效名称。只需确保您选择的 taskName
不作为 taskList
数组中的一项存在。
您现在通过 CLI 运行 修改后的注册 uglify
任务如下:
$ grunt minify
Gruntfile.js
这里是修改后的 Gruntfile.js
:
module.exports = function(grunt) {
grunt.initConfig({
uglify: {
options: {
banner: '/*****Minified file for Pricing Plan*****/'
// ... <-- Your other options
},
dist: {
src: 'scripts/pp.js',
dest: 'scripts/pp.min.js'
}
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('minify', ['uglify']);
};
(注意:还向横幅字符串添加了正斜杠,以便在结果文件中生成有效的 JavaScript 评论)