Typescript typings 全局依赖项和环境依赖项-键入

Typescript typings 全局依赖项和环境依赖项-键入,typescript-typings,Typescript Typings,我真的把环境依赖和全局依赖搞混了。我理解全局依赖性的概念,这意味着全局安装依赖性。但是说到环境依赖性,我不明白它是什么,现在打字最近声明了这一点。我完全迷路了 有人能帮我澄清一下这一困惑吗。首先让你放心,环境和全局打字是一样的,只是名称的改变,因为全局更好地描述了它们的功能 至于他们是什么 使用最简单定义的全局声明是项目全局命名空间中可用的类型 “外部模块”是具有顶级导入或导出的.d.ts文件。外部模块通过在declare module'..'中键入来包装,经过一些依赖性魔术之后,您最终得到的声

我真的把环境依赖和全局依赖搞混了。我理解全局依赖性的概念,这意味着全局安装依赖性。但是说到环境依赖性,我不明白它是什么,现在打字最近声明了这一点。我完全迷路了


有人能帮我澄清一下这一困惑吗。

首先让你放心,环境和全局打字是一样的,只是名称的改变,因为全局更好地描述了它们的功能

至于他们是什么

使用最简单定义的全局声明是项目全局命名空间中可用的类型

“外部模块”是具有顶级导入或导出的.d.ts文件。外部模块通过在declare module'..'中键入来包装,经过一些依赖性魔术之后,您最终得到的声明不会污染项目的全局名称空间

至于为什么这很重要,您可能会与版本和/或重复定义发生冲突

包A依赖于依赖关系X的1.4版 包B依赖于依赖关系X的2.0版

如果包A和包B的定义都是全局的,那么版本冲突(相同依赖项的不同定义)将在全局命名空间中结束,TypeScript编译器将崩溃

这一切都取决于您希望在什么范围内键入可用的声明