jam*_*her 7 declaration typescript definitelytyped typescript-typings
该tsc编译器总是高高兴兴地编译console.log("foo")。变量在哪里console声明?即使lib在我的tsconfig.json. 所以console假设是通用的?总是声明哪些其他变量?更一般地说,我怎样才能找出存在的其他声明,以及它们来自哪里?(我能找到的唯一调试标志是--extendedDiagnostics,但它似乎几乎没用。)
TypeScript 与一组lib.*.d.ts声明文件一起分发,这些文件描述了各种 JavaScript 运行时提供的标准库 API。
console 其中描述。
语言根据--target选项确定哪些文件适用,自动将它们包含在编译上下文中。
例如"target": "es5"会导致编译器包含lib.es5.d.ts在编译上下文中。
您可以使用该--lib选项显式配置应引用这些内置声明文件中的哪些。
例如"lib": ["es2015", "dom", "dom.iterable"]。
如果您使用 IDE 的导航功能,例如 Visual Studio Code 中的“转到定义”,将导航到控制台的装饰,让您可以看到它在哪里。
其他声明文件,例如由各种@types包提供的文件,也可能会导致描述 JavaScript 运行时 API 的潜在重叠声明。这实际上是一种很好的行为,因为它允许包描述它们提供的附加功能。
例如@types/node包含这样的装饰。
当由 3rd 方包声明时,这些附加全局声明文件的包含由--types选项控制, 而不是由--lib选项控制。
例如"types": ["node"]。
包含这些类型不受--target选项的影响。
| 归档时间: |
|
| 查看次数: |
207 次 |
| 最近记录: |