[英]Eslint - configured rules location
我正在嘗試為開箱即用的 Nx 工作區找到默認 eslint 規則的位置。
我看到項目根目錄的 eslintrc 文件中使用了一些插件:
{
"root": true,
"ignorePatterns": ["**/*"],
"plugins": ["@nrwl/nx"],
"overrides": [
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {
"@nrwl/nx/enforce-module-boundaries": [
"error",
{
"enforceBuildableLibDependency": true,
"allow": [],
"depConstraints": [
{
"sourceTag": "*",
"onlyDependOnLibsWithTags": ["*"]
}
]
}
]
}
},
{
"files": ["*.ts", "*.tsx"],
"extends": ["plugin:@nrwl/nx/typescript"],
"rules": {}
},
{
"files": ["*.js", "*.jsx"],
"extends": ["plugin:@nrwl/nx/javascript"],
"rules": {}
}
]
}
有人可以告訴我在哪里可以看到啟用的完整規則列表嗎?
規則來自 npm package @nrwl/eslint-plugin-nx 。 這是包含在沒有“eslint-plugin-”的plugins
列表中的 package 的名稱,它在解析插件位置時由 ESLint 自動添加。
按照 monorepo https://github.com/nrwl/nx的鏈接,並深入“packages”文件夾,我們會發現eslint-plugin-nx的來源。 現在,查看package.json我們看到main
模塊指向"./src/index.js"
"./src/index.ts"
它是由 Typescript. This.ts 文件從子文件夾“config”和“rules”中的模塊導入定義並將它們映射到導出。 因此,您的 .eslinrc 文件中包含的位置的來源如下:
@nrwl/nx/enforce-module-boundaries
: https://github.com/nrwl/nx/blob/master/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts@nrwl/nx/javascript
: https://github.com/nrwl/nx/blob/master/packages/eslint-plugin-nx/src/configs/javascript.ts@nrwl/nx/typescript
typescript: https://github.com/nrwl/nx/blob/master/packages/eslint-plugin-nx/src/configs/typescript.ts ESLint 通過合並extends
部分( .js , .ts )中的規則定義,然后應用配置的rules
定義( .js , .ts ),最后將規則@nrwl/nx/enforce-module-boundaries
為在 your.eslintrc 文件中定義(還要注意.tsx的overrides
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.