在我的React / Redux应用程序中,我有一个带有条件的组件,用于检查reducer状态值是否为空。在开发模式下运行时,此条件完全按预期工作 - 对于reducer的状态更改,条件返回预期结果。但是,当我构建用于部署的应用程序时,条件不再对状态更改做出反应,因此条件背后的代码在它不应该被触发时触发。什么可能导致开发和生产之间的这种差异?
这里是带条件的函数:
_showNav = () => {
const { selectedItem } = this.props
if ( selectedItem !== "" ) {
return (
<Navigation/>
)
}
}
该函数在render()中由一行调用:
{this._showNav()}
答案 0 :(得分:0)
要解决此问题,我将条件移动到导航组件中。我不确定为什么会这样,但我假设通过在组件树中进一步向下移动逻辑,它更有可能接受状态变化。