如果自上次运行以来未发生任何变化,TSLint是否有阻止运行的选项?

时间:2018-12-04 19:17:20

标签: javascript angular typescript lint tslint

我们的办公室里有一个令人讨厌的TSLint规则集,需要花费15分钟以上才能完成我们的项目。

如果我执行一个皮棉,是否可以确保在没有任何变化的情况下不会执行通常会触发皮棉的下一条命令?

即使进行最小的,微不足道的更改,也会造成巨大的延迟。这并不是说它具有侵略性,而是它在构建之间没有持久性层,以了解Typscript生态系统中的任何内容都没有改变,因此,无需重新计划整个项目。

如果可能的话,仅将更改后的文件掉绒也是有益的。

这是我们的TSLint.json,如果有帮助的话;

{
"rulesDirectory": [
    "node_modules/codelyzer"
],
"rules": {
    "no-unused-variable": true,
    "callable-types": true,
    "class-name": true,
    "comment-format": [
    true,
    "check-space"
    ],
    "curly": true,
    "eofline": true,
    "forin": true,
    "import-blacklist": [true, "rxjs"],
    "import-spacing": true,
    "indent": [
    true,
    "spaces",
    4
    ],
    "interface-over-type-literal": true,
    "label-position": true,
    "max-line-length": [
    true,
    160
    ],
    "member-access": false,
    "member-ordering": [
    true,
    "static-before-instance",
    "variables-before-functions"
    ],
    "no-arg": true,
    "no-bitwise": true,
    "no-console": [
    true,
    "debug",
    "info",
    "time",
    "timeEnd",
    "trace"
    ],
    "no-construct": true,
    "no-debugger": true,
    "no-duplicate-variable": true,
    "no-empty": false,
    "no-empty-interface": true,
    "no-eval": true,
    "no-inferrable-types": [false, "ignore-params"],
    "no-shadowed-variable": true,
    "no-string-literal": false,
    "no-string-throw": true,
    "no-switch-case-fall-through": true,
    "no-trailing-whitespace": true,
    "no-unused-expression": true,
    "no-use-before-declare": true,
    "no-var-keyword": true,
    "object-literal-sort-keys": false,
    "ordered-imports": false,
    "one-line": [
    true,
    "check-open-brace",
    "check-catch",
    "check-else",
    "check-whitespace"
    ],
    "prefer-const": true,
    "quotemark": [
    true,
    "single",
    "avoid-escape"
    ],
    "radix": true,
    "semicolon": [
    "always"
    ],
    "triple-equals": [
    true,
    "allow-null-check"
    ],
    "typedef-whitespace": [
    true,
    {
        "call-signature": "nospace",
        "index-signature": "nospace",
        "parameter": "nospace",
        "property-declaration": "nospace",
        "variable-declaration": "nospace"
    }
    ],
    "typeof-compare": true,
    "unified-signatures": true,
    "variable-name": false,
    "whitespace": [
    true,
    "check-branch",
    "check-decl",
    "check-operator",
    "check-separator",
    "check-type"
    ],

    "directive-selector": [true, "attribute", "", "camelCase"],
    "component-selector": [true, "element", "", "kebab-case"],
    "use-input-property-decorator": true,
    "use-output-property-decorator": true,
    "use-host-property-decorator": true,
    "no-input-rename": true,
    "no-output-rename": true,
    "use-life-cycle-interface": true,
    "use-pipe-transform-interface": true,
    "component-class-suffix": true,
    "directive-class-suffix": true,
    "no-access-missing-member": true,
    "templates-use-public": true,
    "invoke-injectable": true
},
"defaultSeverity": "warning"
}

1 个答案:

答案 0 :(得分:2)

不幸的是,截至2018年,TSLint中没有此类功能。 https://github.com/palantir/tslint/issues/3155https://github.com/palantir/tslint/issues/1141在TSLint中跟踪允许的工作。