【发布时间】:2021-07-09 19:36:33
【问题描述】:
我想删除我的隐式声明错误:
元素隐式具有“任意”类型,因为“字符串”类型的表达式不能用于索引类型“{ 1: { length: number; }; 2:{长度:数字; }; 3:{长度:数字; }; 4:{长度:数字; }; }'
我是否为特定功能声明和接口?每当访问 steps 常量的索引时,都会发生此错误。
interface Step {
length: number
}
interface Steps {
[index: number]: Step
}
const min_x = 0
const max_x = 1
const steps = {
1: { length: 1 },
2: { length: 1 },
3: { length: 1 },
4: { length: 1 }
}
const sum = Object.keys( steps ).reduce( ( sum, key ): number => sum + parseFloat( steps[key].length || 0 ), 0 )
let start = min_x
Object.keys( steps ).forEach( ( key: any ) => {
steps[ key ][`start`] = start;
steps[ key ][`stop`] = start + ( steps[ key ].length / sum );
start = start + ( steps[ key ].length / sum );
} )
【问题讨论】:
标签: typescript