类型 'HTMLButtonElement' 不可分配给类型 'string'.ts(2322)
Type 'HTMLButtonElement' is not assignable to type 'string'.ts(2322)
您有一个在 table 中生成“tr”和“td”的函数。使用 For 循环,我将“td”元素放入“tr”。实际上一切正常。但是我在 Visual Studio 代码中遇到错误。
她是我的密码:
function setUI(tbody, courseData){
let arrCourse = Object.values(courseData) // parse object to array
let tr = document.createElement('tr'); // create tr
let button = document.createElement('button'); // create delete button
button.className = 'btn btn-danger'; // add class to button element
tbody.appendChild(tr); // add tr to tbody
for(let i = 0; i<arrCourse.length+1; i++){
let td = document.createElement('td'); // create td .
tr.appendChild(td); // append td to tr
td.innerHTML = arrCourse[i]; // get index of array then push it to td
if(i==arrCourse.length+1){
td.appendChild(button);
}
}
}
我的错误在这里:
类型 'unknown' 不可分配给类型 'string'.ts(2322)
错误是这一行:
td.innerHTML = arrCourse[i]; // get index of array then push it to td
Typescript 编译器无法推断类型,因此它假定类型为 any。您可以通过显式设置类型来解决此问题
let arrCourse: string[] = Object.values(courseData) // parse object to array
您有一个在 table 中生成“tr”和“td”的函数。使用 For 循环,我将“td”元素放入“tr”。实际上一切正常。但是我在 Visual Studio 代码中遇到错误。
她是我的密码:
function setUI(tbody, courseData){
let arrCourse = Object.values(courseData) // parse object to array
let tr = document.createElement('tr'); // create tr
let button = document.createElement('button'); // create delete button
button.className = 'btn btn-danger'; // add class to button element
tbody.appendChild(tr); // add tr to tbody
for(let i = 0; i<arrCourse.length+1; i++){
let td = document.createElement('td'); // create td .
tr.appendChild(td); // append td to tr
td.innerHTML = arrCourse[i]; // get index of array then push it to td
if(i==arrCourse.length+1){
td.appendChild(button);
}
}
}
我的错误在这里: 类型 'unknown' 不可分配给类型 'string'.ts(2322)
错误是这一行:
td.innerHTML = arrCourse[i]; // get index of array then push it to td
Typescript 编译器无法推断类型,因此它假定类型为 any。您可以通过显式设置类型来解决此问题
let arrCourse: string[] = Object.values(courseData) // parse object to array