【问题标题】:Grunt phpcs multiple tasks don't runGrunt phpcs 多个任务不运行
【发布时间】:2015-09-04 15:10:33
【问题描述】:

我尝试为 WordPress 实现一个插件,并使用 phpcsWordPress 标准。

在我的情况下,问题是 phpcs 的默认 WordPress 标准也会检查不符合我需要的 WordPress-VIP,而我喜欢做的是针对 @987654325 测试我的代码@、DocsCore 标准。

因此,在我的应用程序中,我安装了 grunt-phpcs 模块,并在我的 Gruntfile.js 中安装了如下示例代码并且工作正常:

phpcs : {
    application : {
        src : [
            'includes/**/*.php',
            'php/**/*.php',
            'my-plugin.php'
        ]
    },
    options     : {
        bin      : '/usr/local/bin/phpcs',
        standard : 'WordPress-Extra'
    }
}

但是如上所述,这并不能解决我的问题,所以我尝试了以下方法:

phpcs : {
        extra : {
            application : {
                src : [
                    'includes/**/*.php',
                    'php/**/*.php',
                    'my-plugin.php'
                ]
            },
            options     : {
                bin      : '/usr/local/bin/phpcs',
                standard : 'WordPress-Extra'
            }
        },
        docs : {
            application : {
                src : [
                    'includes/**/*.php',
                    'php/**/*.php',
                    'my-plugin.php'
                ]
            },
            options     : {
                bin      : '/usr/local/bin/phpcs',
                standard : 'WordPress-Docs'
            }
        },
        core : {
            application : {
                src : [
                    'includes/**/*.php',
                    'php/**/*.php',
                    'my-plugin.php'
                ]
            },
            options     : {
                bin      : '/usr/local/bin/phpcs',
                standard : 'WordPress-Core'
            }
        }
    }

但这一次,当我尝试运行grunt phpcs:extragrunt phpcs:docsgrunt phpcs:core 时,我得到phpcs --help,这意味着phpcs 不能以这种方式工作。

那么,除了这次要工作之外,还有其他方法可以执行相同的任务吗?

我正在考虑的另一个选择是执行以下操作:

grunt.registerTask('phpcs_extra', function() {
    // do stuff
}

grunt.registerTask('phpcs_docs', function() {
    // do stuff
}

grunt.registerTask('phpcs_core', function() {
    // do stuff
}

但我不确定这是否可行。

【问题讨论】:

  • 注意Extra标准已经包含了Core标准,不需要再包含了。

标签: javascript node.js wordpress gruntjs


【解决方案1】:

你可以试试下面的registerTask:

grunt.registerTask('phpcs_extra', function() {

    var application = {
        src : [
            'includes/**/*.php',
            'php/**/*.php',
            'my-plugin.php'
        ]
    };

    var options = {
        bin      : '/usr/local/bin/phpcs',
        standard : 'WordPress-Extra'
    };

    grunt.config.set('phpcs.application', application);
    grunt.config.set('phpcs.options', options);
    grunt.task.run('phpcs');

});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    • 2016-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多