1

我想知道如何使用 stylelint 为 Jenkins 生成 checkstyle.xml。在网上搜索,遗憾地发现只是stylelint-checkstyle-formatter,但只有以下“说明”:

只需阅读有关使用格式化程序的 stylelint 文档并按照这些说明进行操作。

可悲的是,我在文档中一无所获......

4

2 回答 2

2

我终于找到了一种方法(使用 gulp)并希望它在 StackOverflow 上分享。

首先安装以下依赖项:

yarn add -D stylelint gulp-stylelint stylelint-checkstyle-formatter stylelint-scss stylelint-config-recommended-scss

然后使用以下 gulp 任务:

gulp.task("scss-lint", function() {
    const gulpStylelint = require('gulp-stylelint');
    const stylelintCheckstyleFormatter = require('stylelint-checkstyle-formatter');

    return gulp
        .src('src/**/*.scss')
        .pipe(gulpStylelint({
            reportOutputDir: 'build/reports/scss-checkstyle',
            reporters: [
                {formatter: 'verbose', console: true},
                {formatter: stylelintCheckstyleFormatter, save: 'checkstyle.xml'},
            ],
        }));
});

最后是我的.stylelint

{
    "extends": "stylelint-config-recommended-scss",
    "defaultSeverity": "warning",
    "formatter": "stylelint-checkstyle-formatter",
    "plugins": [
        "stylelint-scss"
    ],
        "rules": {
        "indentation": 4,
            "color-hex-length": null,
            "shorthand-property-no-redundant-values": null,
            "no-missing-end-of-source-newline": null,
            "declaration-empty-line-before": null,
            "at-rule-empty-line-before": null,
            "selector-type-no-unknown": [
            true,
            {
                "ignore": ["custom-elements"],
                "ignoreTypes": ["tooltip"]
            }
        ]
    }
}
于 2018-05-04T08:14:28.107 回答
0

我通过 CLI 安装stylelint-checkstyle-formatter插件,然后使用以下选项将其传递给 stylelint --custom-formatter

npm install stylelint-checkstyle-formatter --save-dev
stylelint --custom-formatter ./node_modules/stylelint-checkstyle-formatter ....
于 2019-07-01T05:38:56.243 回答