我已经意识到,当我在具有一定依赖项的项目上运行tsc时,只要我的系统中Node模块解析路径中任何位置都存在依赖项的任何版本,编译都会成功。
例如:
我现在可以在 project_2 中为 dep_1 使用导入语句,而无需将 dep_1 添加到 project_2 的程序包中.json和tsc在编译时不会抱怨。
可以更改此行为以使Typescript了解每个项目的package.json中声明的依赖项吗?
答案 0 :(得分:2)
这是吊装包裹的固有问题,也是许多包裹被装箱的原因。尽管如此,TSLint提供了no-implicit-dependencies
规则,以防止导入未列为直接依赖项的提升包。
答案 1 :(得分:0)
请注意,这并非特定于TypeScript。您将可以通过普通的JavaScript执行相同的操作。它是吊装所固有的。