mirror of
https://github.com/tusen-ai/naive-ui.git
synced 2025-04-18 14:50:56 +08:00
fix(avatar): lazy & error
This commit is contained in:
parent
6928835c86
commit
83c09a6bf9
@ -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'
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -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'
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -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)
|
||||
|
@ -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;
|
||||
|
@ -109,8 +109,7 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
watchEffect(() => {
|
||||
void props.src
|
||||
void props.imgProps?.src
|
||||
void (props.src || props.imgProps?.src)
|
||||
showErrorRef.value = false
|
||||
})
|
||||
|
||||
|
@ -53,6 +53,7 @@ export default defineComponent({
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.item {
|
||||
display: flex;
|
||||
|
@ -53,10 +53,11 @@ export default defineComponent({
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.item {
|
||||
display: flex;
|
||||
align-items: start;
|
||||
align-items: flex-start;
|
||||
}
|
||||
.avatar {
|
||||
width: 28px;
|
||||
|
Loading…
x
Reference in New Issue
Block a user