在 ComponentDidUpdate 中显示错误 反应本机和 redux



我试图在使用 redux 身份验证失败时显示错误警报。我在组件更新中这样做是这样

if (prevProps.Error !== this.props.Error) { this.setState({loading: false}) this.dropdown.alertWithType('error', 'Error', this.props.Error) }

但问题是,如果在第一次尝试后出现错误,它不会显示。它不起作用,因为this.props.Error没有改变,即prevProps.Error === this.props.Error.

我已经尝试过if(this.props.Error) {}if(this.props.Error != '') {},它们给出了运行时错误。

我知道有更好的方法可以做到这一点,但我不能弄清楚。请帮忙。谢谢。

主要问题是在第一次失败之后,如果第二次或随后的失败返回相同的失败消息 react 不知道我的错误 prop 已更改,它假设它们是相同的。但是我想显示错误,即使它是相同的错误。

例如,第一次尝试错误 ="身份验证失败

",第二次尝试错误 ="身份验证失败"。

试试这段代码

shouldComponentUpdate(nextProps){
    if(nextProps.Error && nextProps.Error !== ''){
        this.setState({loading: false})
        this.dropdown.alertWithType('error', 'Error', nextProps.Error)
    }
}

相关内容

  • 没有找到相关文章

最新更新