fix: ImagePreview
refresh problem when onload of multiple pictures is triggered at the same time
#173
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
问题描述:多张图片组件预览时,第一次打开黑屏,图片不显示
问题分析:
setImagesStatusByIndex setImagesStatus
如果两张图片的onload事件同时到达,此时render没有来得刷新,会出现在一次render期间
setImagesStatus被调用两次,
第一次刷新时根据 imagesStatusRef.current 来计算
setImagesStatus 之后imagesStatusRef.current值没有立即改变
第二次刷新时也根据 imagesStatusRef.current 来计算
覆盖了第一次刷新的结果,导致第一张图片的loaded状态一直为false