当redux状态更改时,反应不重新呈现。
当我进入此页面时,最初的redux存储“客户”为空。它获取数据,更新redux,但是未重新渲染的部分代码是select选项..,尽管redux存储正在存储中,但仅保留了“ Loading ”选项已更新。
这是相关的代码,请尽我所能简化..
E
我通过在返回中仅包含一个简单的h1标签进行了测试,由于某种原因,它可以正常工作,但是映射不会再次发生吗?
<button ion-item (click)="editItem(i, item)">
<ion-avatar item-start>
<img [src]="item.photo" />
</ion-avatar>
<h2>{{item.name}}</h2>
<p>{{item.info}}</p>
</button>
编辑 :除了customers.length ..上的逻辑错误外,我没有提到我将MaterializeCss用于此选择选项,最后,逻辑fix + componentDidUpdate重新初始化Materialize解决了该问题。
答案 0 :(得分:1)
检查您的逻辑。
您已经编码
{customers.length !== 0 ? (<option>Loading..</option>
这意味着如果长度大于零,则正在渲染“加载”。一定是
render(){
const customers = this.props.customers
if(!customers.length){
return Loading
}
return(
<Field>
<option value="" disabled selected>State</option>
customers.map(customer => {
return (
<option key={customer.id} value={customer.id}>
{customer.customer_name}
</option>
);
})
)}
</Field>
)}
如果要像字段选项一样呈现负载,只需更改条件即可。希望对您有帮助