找不到名称'console'
问题描述:
我正在使用Angular2-Meteor,TypeScript。 (流星版本1.3.2.4)找不到名称'console'
当我在服务器端上使用console.log('test');
时,它运行良好。
不过,我在我的终端这样的警告:
找不到名称“控制台”。
我该如何摆脱此警告?
或者是否有任何特殊的方法,如Meteor.log
服务器端?谢谢
答
@barbatus是angular2-meteor的主要贡献者,他在Github上给出了答案。
问题在于TypeScript软件包在服务器端使用lib.core.ts默认lib,它没有控制台的定义。现在,来自其他方的NodeJS定义仅在全局范围内定义了控制台(即global.console)。
解决方法就是在你的终端运行以下命令:
typings install registry:env/meteor --ambient
请到here了解更多详情。
答
我该如何摆脱此警告?
如果一个打字稿编译器警告(而不是运行一个),然后console
在lib.d.ts
定义:https://basarat.gitbooks.io/typescript/content/docs/types/lib.d.ts.html
确保编译器是否设置正确(如没有--noLib
或一些自定义不正确的--lib
)。你可能想看看你的tsconfig.json
的compilerOptions
(如果有的话)
感谢您的帮助! –
你提到,'不正确--lib'。你知道哪个库包含'console'定义吗? –