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)