setState更改后,元素未更新

时间:2018-09-20 09:21:45

标签: javascript reactjs redux redux-store

我是Reactjs的新手。

在这里,我正在尝试在类似按钮的按钮上显示微调器

<button type="submit"
    style={{ fontWeight: 'bold', marginTop: 10 }}
    className="btn btn-primary btn-block"
    onClick={(event) => this.handleClick(event)}>
        {<i class="fa fa-spinner fa-spin"></i> && this.state.isloading}
        Login
</button>

现在,在这里,

constructor(props) {
    super(props);
    this.state = {
        userName: '',
        passWord: '',
        isloading: false
    }
}

componentWillReceiveProps(newProps) {
    if (newProps.clickedLogin) {
        this.setState({
            isloading: true
        });
    }
}

因此,当用户单击按钮时,我将调度一个动作,然后使用mapStateTOProps获得一个道具。

但是现在,当我单击按钮时,它没有显示该微调器。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

您需要更改

{<i class="fa fa-spinner fa-spin"></i> && this.state.isloading}

{this.state.isloading && <i class="fa fa-spinner fa-spin"></i>}