当我试图通过动态访问属性来设置React属性时,我得到一个类型脚本错误,Element implicitly has an 'any' type because expression of type 'string' can't be used to index type '{ settings : string; }'.
代码如下:
const settings = reactive({
name: 'hello'
});
const setProperty = (property: string) => {
settings[property] = 'new value'; // <-- typescript error
}
我可以通过输入“any”来解决它,但这不是正确的解决方案:
(settings as any)[property] = 'new value';
那么,什么是一个好的方式来输入它?
1条答案
按热度按时间acruukt91#
您应该使用
keyof typeof settings
而不是string
作为property
。