TsLint/TsConfig:模块“共享”未在 package.json 中列为依赖项

问题描述

我正在尝试创建以下 monorepo 结构:

node_modules
project-1
  | tsconfig.json
  | src
project-2
  | tsconfig.json
  | src
shared
  | src

我希望项目 1 和 2 都能够从共享导入。在我添加到路径 'shared': '[../shared]' 的两个 tsconfigs 中,这允许我直接从共享中导入代码。然而,Tslint 用 Module 'shared' is not listed as dependency in package.json 抱怨。关于如何让 linter 识别两个项目中的 shared 文件夹而不禁用 tslint 规则的任何想法?

解决方法

tslint.json 中,您可以在规则旁边指定文件夹的白名单:

"no-implicit-dependencies": [true,["app","environments","shared"]],