尝试对数组键使用动态值时出现以下错误。
Element implicitly has an 'any' type because expression of type '`faults_${string}`' can't be used to index type 'HeatsTable'.
export interface HeatsTable {
heat_id: UUID
start: number
faults_1: string[]
faults_2: string[]
faults_3: string[]
faults_4: string[]
}
const fault = heatData[`faults_${runningId}`]; // Throws the above TS error
使用
keyof HeatsTable
可以工作,但会在另一个页面上导致错误,因为它认为错误可能是数字。我还缺少其他解决方案吗?
如果使用这个答案会怎样?
const fault = heatData[`faults_${runningId}` as keyof HeatsTable];