Mot*_*tti 6 node.js typescript
一位朋友重构了一些代码,并将一个name从函数顶级范围调用的变量的定义移动到了一个then体内.此变量在后续使用中then导致ReferenceError,因为name它不在范围内.
在我们看到typescript/lib.d.ts有以下减速之前,我们无法理解代码是如何通过编译的:
declare const name: never;
Run Code Online (Sandbox Code Playgroud)
长话短说,我有两个问题.
name(以及length许多其他全局变量)默认添加到打字稿?这似乎是一个非常古老的浏览器行为.参考MDN两者name并且length是window对象的属性.
为了摆脱所有特定于DOM的声明,您可以相应地设置lib属性tsconfig.你可以看到这个页面上的所有选项.看看--lib国旗.
告诉TypeScript你的代码在Node.JS上运行的选项会很好.但它似乎尚未实现:https://github.com/Microsoft/TypeScript/issues/9466
| 归档时间: |
|
| 查看次数: |
631 次 |
| 最近记录: |