Gruntjs 执行两个gruntfile.js?

Gruntjs 执行两个gruntfile.js?,gruntjs,Gruntjs,最近,我们为移动站点m.xyz.com创建了一个单独的代码库,并对其进行了性能优化。我们在代码库中实现了grunt。现在,我们计划在即将推出的新桌面版本中使用相同的代码库。因此,我们将构建一个代码库作为移动/桌面 现在,整个项目只有一个为mobile编写的Gruntfile.js。如何拆分移动/桌面任务?比方说,如果我执行“grunt mobile”,mobile gruntfile.js就会被执行。如果我键入“grunt desktop”,desktop GrunFile.js将被执行。是否有

最近,我们为移动站点m.xyz.com创建了一个单独的代码库,并对其进行了性能优化。我们在代码库中实现了grunt。现在,我们计划在即将推出的新桌面版本中使用相同的代码库。因此,我们将构建一个代码库作为移动/桌面


现在,整个项目只有一个为mobile编写的Gruntfile.js。如何拆分移动/桌面任务?比方说,如果我执行“grunt mobile”,mobile gruntfile.js就会被执行。如果我键入“grunt desktop”,desktop GrunFile.js将被执行。是否有其他方法可以解决此问题?

如果您不想自己解析命令行参数,最好设置一个选项。把它叫做
grunt任务--mobile

module.exports = function (grunt) {
    if(grunt.option('mobile')) {
        require('Gruntfile.mobile.js')(grunt);
    } else if(grunt.option('desktop')) {
        require('Gruntfile.desktop.js')(grunt);
    }
}

我创建了两个文件Gruntfile.mobile.js和Gruntfile.desktop.js

我的Gruntfile.js如下所示

'use strict';
module.exports = function(grunt) {
    if (grunt.option("option") == 'mobile') {
        require('./Gruntfile.mobile.js')(grunt);
    } else if (grunt.option("option") == 'desktop') {
        require('./Gruntfile.desktop.js')(grunt);
    }
};
我的命令行:
grunt--option=mobile
用于移动设备,而
grunt--option=desktop
用于桌面