gpt4 book ai didi

javascript - 常见任务在 GruntJS 中运行一次

转载 作者:行者123 更新时间:2023-11-28 20:06:29 24 4
gpt4 key购买 nike

我想在 GruntJS 中有一个通用任务,如果已经由同一 session 中的不同任务运行,则该任务不会第二次运行。

例如,我有任务:

grunt.registerTask("make_win", ["prepare_dist", "copy_win", "compress_win"]);
grunt.registerTask("make_linux", ["prepare_dist", "copy_linux", "compress_linux"]);
grunt.registerTask("make", ["make_win", "make_linux"]);

现在如何运作:

  • 当调用make时,会运行以下任务:prepare_dist、copy_win、compress_win、prepare_dist、copy_linux、compress_linux(因此,prepare_dist运行了两次,但这不是必需的)因为 dist(公共(public)基础)已经准备好了);

我想要实现的目标:

  • 调用 make_win 时,应运行以下任务:prepare_dist、copy_win 等;
  • 调用 make_linux 时,应运行以下任务:prepare_dist、copy_linux 等;
  • 当调用 make 时,应运行以下任务:prepare_dist、copy_win、compress_win、copy_linux、compress_linux(因此,prepare_dist 被跳过,因为已经运行);

最佳答案

创建一个回调作为任务,在任务中检查run是否为true:

grunt.registerTask('foo', 'A sample task that runs once.', function() {
if (!run) {
grunt.task.run('bar');
run = true;
}
});

关于javascript - 常见任务在 GruntJS 中运行一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20722132/

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