簡體   English   中英

在 Angular 中排除某些關鍵字和短語的 ESLint 規則?

[英]ESLint Rule to Exclude Certain Keywords and Phrases in Angular?

我需要編寫一個 Angular Typescript 規則來警告人們是否使用某些“關鍵字/短語”。 例如,如果源文件中直接存在關鍵字“Birthdate”或“SSN”,則應給出警告。

有人將如何編寫此規則來使用 ESLint 限制單詞?

目前正在嘗試研究,在Stackoverflow文章搜索存檔中沒有看到任何文章,

好奇如何操作下面的示例代碼或(對任何其他解決方案開放),

我在“id-blacklist”下面應用了以下內容:[“SSN”,“Birthdate”],接收錯誤

https://eslint.org/docs/rules/id-blacklist

module.exports = {
    "env": {
        "browser": true,
        "es6": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:@typescript-eslint/eslint-recommended"
    ],
    "globals": {
        "Atomics": "readonly",
        "SharedArrayBuffer": "readonly"
    },
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "ecmaVersion": 2018,
        "sourceType": "module"
    },
    "plugins": [
        "@typescript-eslint"
    ],
    "rules": {
        "id-blacklist": ["SSN","Birthdate"]
    }
};

錯誤:

規則“id-blacklist”的配置無效:嚴重性應該是以下之一:0 = 關閉,1 = 警告,2 = 錯誤

其他資源:

https://rangle.io/blog/custom-tslint-for-angular/

https://medium.com/@andrey.igorevich.borisov/writing-custom-tslint-rules-from-scratch-62e7f0237124

我是通過管道檢查完成的,但您可以使用預提交,如下所示: Is it possible to ban a list of words with ESlint or any other when pre-commit?

你可以用 ESlint [不推薦使用 TSlint] 來做到這一點: https ://eslint.org/docs/rules/id-blacklist

 'no-restricted-syntax': [ 'error', 'Literal[value=/^(special|zzz|xxx)$/i]', 'BinaryExpression[right.value = /^(special|zzz|xxx)$/i]', ],

這條規則對我有用,我的要求是我們不希望倉庫中的某些鍵是硬代碼。

如果您的代碼如下所示,它將顯示錯誤:

 const t = { pp: 'special', }; const tt = 'special', const f = (arg) => { return arg === 'special'; } function ff(arg) { return arg === 'special'; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM