在 TypeScript 中,无法直接使用动态密钥名称来调用 setState
方法。setState
方法是 React 中的一个函数,用于更新组件的状态。它接受一个对象作为参数,该对象包含要更新的状态属性及其对应的新值。
在 TypeScript 中,我们需要提前定义状态的类型,并在组件的类中声明该状态。然后,我们可以使用动态密钥名称来更新状态属性。
以下是一个示例:
import React, { Component } from 'react';
interface MyComponentState {
[key: string]: any;
}
class MyComponent extends Component<{}, MyComponentState> {
constructor(props: {}) {
super(props);
this.state = {};
}
updateState(key: string, value: any) {
this.setState({ [key]: value });
}
render() {
return (
<div>
{/* 在组件中使用状态 */}
</div>
);
}
}
在上述示例中,我们定义了一个 MyComponentState
接口,它具有动态密钥名称和任意值的类型。然后,在组件的类中声明了该状态,并在 updateState
方法中使用动态密钥名称来更新状态属性。
领取专属 10元无门槛券
手把手带您无忧上云