为什么不建议使用 typeRoots 来指定 d.ts 文件的位置?

use*_*888 8 node-modules typescript tsconfig ts-node

在以下有 19 个赞成票的SO 评论中,用户对 Typescript 声明文件和使用说了以下内容typeRoots

@Tom 它在与查找普通 .ts 文件相同的位置查找 .d.ts 文件:如 tsconfig.json 中指定的“文件”、“包含”和“排除”。我不建议为此目的使用 typeRoots:它用于外部类型模块(即 node_modules/@types)的位置,而不是单个 .d.ts 文件。

本质上,用户说不typeRoots应该用于单个 .d.ts 文件,但我不确定为什么会出现这种情况。这有充分的理由吗?

更让我困惑的是,该ts-node模块特别建议用户使用typeRootsin 属性tsconfig.json来声明全局类型定义。可以在此处找到概述此内容的文档。

所以问题是,我应该typeRoots按照文档概述的方式ts-node来声明全局类型定义吗?