如何在@types上为范围/命名空间包安装TypeScript声明?

我正在使用TypeScript,我想要使用不包含自己的types声明的作用域包(例如@foo/bar@babel/core等)。

我试图运行类似的东西

 npm install @types/@foo/bar 

但似乎并不可用。

有没有办法从@types作用域DefinitelyTyped这些.d.ts文件? 如果需要的话,有没有办法编写自己的作用域包?

有没有办法从@types作用域DefinitelyTyped这些.d.ts文件?

不幸的是,npm不允许作用域包在其名称中包含@ ,所以这些名称被改为使用两个下划线来代替@

特别是,如果你想为package @foo/bar安装types声明,你需要运行

 npm install @types/foo__bar 

如果需要的话,有没有办法编写自己的作用域包?

是! 从绝对键入的README.md :

范围包@foo/bar types/foo__bar应该放在types/foo__bar 。 请注意双下划线。