问题:我有一个名为“SignupForm”的 React 组件,我正在尝试按如下方式扩展它:
export default class UserSignup extends Component {
render() {
const obForm = <SignupForm/>;
obForm.setState({lockAccountType: true});
return obForm;
}
}
但这会引发常量 obForm 缺少 setState 方法的错误,Uncaught (in Promise) TypeError: obForm.setState is not a function
那么我应该如何设置这个 react 组件的状态呢?我觉得这是最正确的做法。
最佳答案
您需要将一个 prop 从 UserSignup 传递到 SignupForm
<SignupForm lockAccountType={Boolean} />
在 SignupForm 组件中,使用 lockAccountType 属性设置状态。大多数人使用 componentDidMount 生命周期方法来执行此操作。为 SignupForm 提供 lockAccountType={Boolean} 的初始状态,然后使用您的 prop 在 componentDidMount 上更改它。
关于javascript - 如何在 React 中应用外部 SetState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42464760/