reactjs 使用Yarn插件为monorepo配置tsjson和eslint

qrjkbowd  于 2023-10-17  发布在  React
关注(0)|答案(1)|浏览(134)

我在一个TypeScript React项目中使用了Yarn workspace monorepo结构:

packages
  admin
    package.json
  user
    package.json
package.json // Workspace Root. Sets "workspaces": ["packages/*"]

我正在努力设置eslint和TypeScript。
这是我当前的.eslintrc.json文件:

但是我不确定我需要多少.eslintrctsconfig.json文件。

选项1

每个包将处理自己的.eslintrc.jsontypescript.json

packages/
  admin/
    package.json
    .eslintrc.json
    tsconfig.json
  user/
    package.json
    .eslintrc.json
    tsconfig.json

package.json

选项2

有一个根级别的.eslintrc.jsontsconfig.json,只需要为内部包做一些扩展和覆盖(如果需要的话)。

packages/
  admin/
    package.json
    .eslintrc.json  // Some extends/overrides
    tsconfig.json   // Some extends/overrides
  user/
    package.json
    .eslintrc.json  // Some extends/overrides
    tsconfig.json   // Some extends/overrides

package.json
.eslintrc.json
tsconfig.json

我应该遵循哪两个选项?如果我选择选项2,我是否需要在root级别的.eslintrc.jsontsconfig.json上进行任何特殊配置?

v09wglhw

v09wglhw1#

我更喜欢第二种方法,但不要忘记提及.eslintrc.json包中的扩展部分
.eslintrc.json

{
  "root": true,
  ...
}

Package .eslintrc.json

{
  "extends": [
    "../../.eslintrc.json" 
  ]
}

相关问题