问题:我有一个名为“ 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

那我该如何去设置这个反应组件的状态呢?我觉得那是最合适的方法。

最佳答案

您将需要将一个道具从UserSignup传递给SignupForm

<SignupForm lockAccountType={Boolean} />

在SignupForm组件中,使用lockAccountType属性设置状态。大多数人使用componentDidMount生命周期方法执行此操作。将SignupForm的初始状态设置为lockAccountType = {Boolean},然后使用您的prop在componentDidMount上对其进行更改。

07-24 09:44