Reactjs 条件渲染总是错误的

Reactjs 条件渲染总是错误的,reactjs,redux,Reactjs,Redux,我有一个从Redux商店获取信息的组件。为了初始化存储,我调用了调度函数,该函数通过AJAX调用填充状态 我面临的问题是,条件渲染总是错误的。我甚至在控制台中调试语句,它输出TRUE,但在条件呈现中它总是FALSE(它跳过呈现子组件) 以下是我正在使用的代码: componentDidMount() { this.props.routeInfo() } render() { console.log(Object.keys(this.props.inboundRou

我有一个从Redux商店获取信息的组件。为了初始化存储,我调用了调度函数,该函数通过AJAX调用填充状态

我面临的问题是,条件渲染总是错误的。我甚至在控制台中调试语句,它输出TRUE,但在条件呈现中它总是FALSE(它跳过呈现子组件)

以下是我正在使用的代码:

componentDidMount() {
    this.props.routeInfo()     
}

render() {


    console.log(Object.keys(this.props.inboundRoute).length !== 0);
    //After dispatch and redux state changes this outputs to TRUE!


    return (

        <div className="wrapper wrapper-content animated fadeInRight">
             //This statement is always FALSE
            {Object.keys(this.props.inboundRoute).length !== 0 &&

            <div className={`${this.props.match.params.ticketType !== "2" ? "col-md-12" : "col-md-6"}`}>
                <TicketInfo/>
            </div>
            }

            <BillingInfo/>
        </div>
    )
}
编辑


一旦触发render中的返回方法,道具似乎总是空的。有人知道原因吗?

尝试将
this.props.inboundRoute
存储在变量中。此外,我认为最好执行
inboundRoute.length>0
而不是
inboundRoute.length!==0
尝试在变量中存储
this.props.inboundRoute
。此外,我认为最好执行
inboundRoute.length>0
而不是
inboundRoute.length!==0
function mapStateToProps(state) {
return {
    inboundRoute: state.passenger.inboundRoute,
    returnRoute: state.passenger.returnRoute,
};
}

export default withRouter(connect(mapStateToProps, {routeInfo})(PassengerList));