我通过将.js
文件重命名为.ts
来尝试将适度大型项目从JavaScript迁移到TypeScript。这个项目很大,我从小例子开始。 JavaScript代码已经是类了,我选择了一个简单的类Token
类,没有依赖关系。下面会显示一个简化版本,其底线使用tsc 1.8生成错误,说明"属性' INVALID_TYPE'在type()=>上不存在任何。"
function Token() {
this.source = null;
this.type = null; // token type of the token
this.line = null; // line=1..n of the 1st character
this.column = null; // beginning of the line at which it occurs, 0..n-1
return this;
}
Token.INVALID_TYPE = 0;
我了解如何通过将function Token
转换为class Token
,我可以使INVALID_TYPE
成为类Token
的静态成员,但是这样可以跨近近10k行代码执行此操作变得相当复杂。我正在寻找更多增量方法。消除错误的一种更简单的方法是将最后一行更改为:
(<any>Token).INVALID_TYPE = 0;
是否有更好的快速修复方法可以暂时消除此类TypeScript错误消息?
答案 0 :(得分:1)
快速解决方法是将函数声明重写为函数表达式(确保没有丢失的问题!)并将其转换为any
类型,然后你可以添加任何道具想。
const Token = <any> function() {
// ...
}