1、背景:
使用react-redux管理数据,在使用Upload上传时,单独开辟预览区域,使用thumbUrl展示预览图片,在state更新后,dom有时可以更新,有时更新不了。
2、原因:
Upload组件在onChange事件中,file的thumbUrl属性是异步添加的,在更新props时,这个值有时会不存在,导致dom无法渲染。
3、解决办法:
异步再次dispatch一次
setTimeout(() => { const thumbUrl = value.fileList[0].thumbUrl; if (thumbUrl) { dispatch(RouterLayoutConfigAddStyleUploadActions(value)) } }, 1000)