fix(avatar): lazy & error

This commit is contained in:
07akioni 2024-01-07 02:15:07 +08:00
parent 6928835c86
commit 83c09a6bf9
7 changed files with 12 additions and 8 deletions

View File

@ -32,6 +32,7 @@ Load the images only after they enter the viewport. There are two ways to use it
lazy
:src="src"
fallback-src="https://07akioni.oss-cn-beijing.aliyuncs.com/07akioni.jpeg"
:render-placeholder="() => null"
:intersection-observer-options="{
root: '#image-scroll-container'
}"
@ -52,11 +53,11 @@ export default defineComponent({
'https://picsum.photos/id/3/100/100',
'https://picsum.photos/id/4/100/100',
'https://picsum.photos/id/5/100/100',
'xxx.png',
'https://picsum.photos/id/7/100/100',
'https://picsum.photos/id/8/100/100',
'https://picsum.photos/id/9/100/100',
'https://picsum.photos/id/10/100/100'
'https://picsum.photos/id/10/100/100',
'xxx.png'
]
}
}

View File

@ -33,6 +33,7 @@
lazy
:src="src"
fallback-src="https://07akioni.oss-cn-beijing.aliyuncs.com/07akioni.jpeg"
:render-placeholder="() => null"
:intersection-observer-options="{
root: '#image-scroll-container'
}"
@ -53,11 +54,11 @@ export default defineComponent({
'https://picsum.photos/id/3/100/100',
'https://picsum.photos/id/4/100/100',
'https://picsum.photos/id/5/100/100',
'xxx.png',
'https://picsum.photos/id/7/100/100',
'https://picsum.photos/id/8/100/100',
'https://picsum.photos/id/9/100/100',
'https://picsum.photos/id/10/100/100'
'https://picsum.photos/id/10/100/100',
'xxx.png'
]
}
}

View File

@ -235,6 +235,7 @@ export default defineComponent({
shouldStartLoading: shouldStartLoadingRef,
loaded: loadedRef,
mergedOnError: (e: Event) => {
if (!shouldStartLoadingRef.value) return
hasLoadErrorRef.value = true
const { onError, imgProps: { onError: imgPropsOnError } = {} } = props
onError?.(e)

View File

@ -62,7 +62,7 @@ export default cB('form-item', `
"label feedback";
grid-template-columns: auto minmax(0, 1fr);
grid-template-rows: auto 1fr;
align-items: start;
align-items: flex-start;
`, [
cB('form-item-label', `
display: grid;

View File

@ -109,8 +109,7 @@ export default defineComponent({
})
watchEffect(() => {
void props.src
void props.imgProps?.src
void (props.src || props.imgProps?.src)
showErrorRef.value = false
})

View File

@ -53,6 +53,7 @@ export default defineComponent({
}
})
</script>
<style>
.item {
display: flex;

View File

@ -53,10 +53,11 @@ export default defineComponent({
}
})
</script>
<style>
.item {
display: flex;
align-items: start;
align-items: flex-start;
}
.avatar {
width: 28px;