我正在做一个有角度的项目。运行良好。但是它没有通过掉毛测试。 This问题不是很有帮助。这是我得到的错误:
ERROR: C:/Users/.../monthpicker.component.ts:164:22 - Type assertion using the '<>' syntax is forbidden. Use the 'as' syntax instead.
Lint errors found in the listed files.
并且那行164在我的ts文件中:
testMethod() {
this.text = (<HTMLInputElement>document.getElementById('rangeInput')).value;
}
我是Angular的新手。我不知道该怎么办。我无法删除<>
,因为rangeInput
是HTML中的输入元素:
<input id="rangeInput" [ngModel]="text" placeholder="Select range" />
请帮助我。如何解决此问题并通过此棉绒测试。我正在使用Node v10.15.3
。
PS:该项目运行时没有错误或警告。仅在开始棉绒测试时在git push
期间发生。
我还没有测试过,但是通常语法是;
testMethod() {
this.text = (document.getElementById('rangeInput') as HTMLInputElement).value;
}
打个招呼。
// When stand Alone
// To add before statement
// -/ <intendedType>StatementThatResolves();
const myCanvas1 = <HTMLCanvasElement>document.getElementById("something");
// To add after statement
// -/ StatementThatResolves() as intendedType;
const myCanvas2 = document.getElementById("something") as HTMLCanvasElement;
// When you need to group use ()
// To add before statement
// -/ <intendedType>StatementThatResolves();
const myCanvasHasWidth1 = (<HTMLCanvasElement>document.getElementById("something")).hasAttribute("width");
// To add after statement
// -/ StatementThatResolves() as intendedType;
const myCanvasHasWidth2 = (document.getElementById("something") as HTMLCanvasElement).hasAttribute("width");
为了更清楚起见,请尝试使用衬棉规则标准化您喜欢的浇铸方法。
我认为您甚至不需要“ as”。您是否尝试过:
testMethod() {
this.text = (document.getElementById('rangeInput')).value;
}
或如here中的>
const el:HTMLElement = document.getElementById('content');
我强烈建议您删除document.getElementById
,因为当您的项目由于在角度之外是完整的而变得更加复杂时,可能会带来很多问题。