gpt4 book ai didi

javascript - 定义自定义 Grunt 任务并将其与其他任务链接起来

转载 作者:行者123 更新时间:2023-12-02 15:51:29 25 4
gpt4 key购买 nike

我有以下Gruntfile.js:

module.exports = function(grunt) {
var config = {
shell: {
...
},
copy: {
...
}
};
grunt.initConfig(config);

grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-shell');

grunt.registerTask('default', ['shell:compile', 'copy:jsfiles']);
};

我正在使用 grunt-contrib-x 组件,这些组件可以进行配置,然后作为链的一部分在任务中注册。

自定义任务怎么样?

我需要添加另一个任务,其工作由函数执行:

var customTask = function() {
// This will do something...
};

我需要在 shell:compilecopy:jsfiles 之后运行它,作为另一个任务的一部分,并且也在其他链中运行。我希望有相同的模式并能够做类似的事情:

module.exports = function(grunt) {
var config = {
shell: { ... }, copy: { ... },
customTask: function() {
// Doing stuff
}
};
// ... some code ...
grunt.registerTask('default', ['shell:compile', 'copy:jsfiles']);
grunt.registerTask('advanced', ['shell:compile', 'copy:jsfiles', 'customTask']);
grunt.registerTask('advanced2', ['shell:compileComponent', 'copy:jsfilesComponent', 'customTask']);
};

目标是能够创建任务链并将我的自定义任务作为要执行的顺序任务列表的一部分包含在内。

我怎样才能实现这个目标?

最佳答案

调用grunt.registerTask并传入名称作为第一个参数和要运行的函数作为最后一个参数。

grunt.registerTask('myTask', function () {
//do some stuff
});

然后你就可以链接它了

grunt.registerTask('advanced', ['shell:compile', 'copy:jsfiles', 'myTask']);

基本上与示例中的相同,只是您将自定义任务定义为 grunt.registerTask 的参数,而不是配置中的属性。

http://gruntjs.com/creating-tasks#custom-tasks

关于javascript - 定义自定义 Grunt 任务并将其与其他任务链接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31820614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com