遍历表时,属性行在类型HTMLElement错误TS2339上不存在

时间:2020-02-09 14:31:39

标签: javascript typescript angular7

问题

HTMLElement错误TS2339类型上不存在属性行

遍历表时 在角度7上

我在角度7上工作 当循环到表html并编译时出现错误

src / app / Pages / part-compare / part-compare.component.ts(25,38)中的错误:

错误TS2339:类型“ HTMLElement”上不存在属性“行”。

src / app / Pages / part-compare / part-compare.component.ts(27,26):错误TS2339:

类型“ HTMLElement”上不存在属性“行”。

请如何解决此错误?

我尝试过的事情:

var table = document.getElementById("CompareParts");
    for (var i = 1, row; row = table.rows[i]; i++) {
      for (var j = 0, col; col = row.cells[j]; j++) {
        var Cell = table.rows[i].cells
        this.ACells.push(Cell);
      }
    }
    this.length=this.ACells.length
    for (var x = 0; x < this.ACells.length; x++) {
      this.ARows.push(this.ACells[x]);

1 个答案:

答案 0 :(得分:0)

当您调用document.getElementById时,TypeScript不知道元素的具体类型是什么,因此该函数返回通用类型HTMLElement。您应该将其转换为HTMLTableElement。

尝试这样的事情:

var table = document.getElementById("CompareParts") as HTMLTableElement;