我们正在使用提供的Typescript ServicStack参考工具生成DTO,但这会产生警告警告。
失败的棉绒规则是no-angle-bracket-type-assertion,请参考此以获取一些详细信息:https://palantir.github.io/tslint/rules/no-angle-bracket-type-assertion/
我可以禁用该规则并取消此规则,但这会引起此处https://basarat.gitbooks.io/typescript/docs/types/type-assertion.html所述的歧义,因此建议使用新语法。
当前,它们使用尖括号语法()生成:
public constructor(init?:Partial<ResponseError>) { (<any>Object).assign(this, init); }
但是他们应该使用“任意”语法:
public constructor(init?:Partial<ResponseError>) { (Object as any).assign(this, init); }
有人知道如何更改生成的DTO或仅忽略这一个文件吗?
答案 0 :(得分:1)
他们是both valid TypeScript syntax for Type Assertions。 Palintir不会决定有效的语法(这是TypeScript编译器的作用),他们只是设置一些可以更改的可替代默认值。
从最新的v5.5.1 of ServiceStack that's now on MyGet开始,它始终采用tslint (Object as any)
默认值。