From 0ee41a41a9f52e2c029d221b0aaab8fd787b2536 Mon Sep 17 00:00:00 2001 From: neverland Date: Fri, 23 Dec 2022 11:07:40 +0800 Subject: [PATCH] fix(Image): load event missing params (#11406) --- packages/vant/src/image/Image.tsx | 15 ++++++++++++--- packages/vant/src/image/README.md | 2 +- packages/vant/src/image/README.zh-CN.md | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/vant/src/image/Image.tsx b/packages/vant/src/image/Image.tsx index e7c661fac..b80e34033 100644 --- a/packages/vant/src/image/Image.tsx +++ b/packages/vant/src/image/Image.tsx @@ -96,13 +96,22 @@ export default defineComponent({ } ); - const onLoad = (event?: Event) => { + const onLoad = (event: Event) => { if (loading.value) { loading.value = false; emit('load', event); } }; + const triggerLoad = () => { + const loadEvent = new Event('load'); + Object.defineProperty(loadEvent, 'target', { + value: imageRef.value, + enumerable: true, + }); + onLoad(loadEvent); + }; + const onError = (event?: Event) => { error.value = true; loading.value = false; @@ -172,7 +181,7 @@ export default defineComponent({ const onLazyLoaded = ({ el }: { el: HTMLElement }) => { const check = () => { if (el === imageRef.value && loading.value) { - onLoad(); + triggerLoad(); } }; if (imageRef.value) { @@ -206,7 +215,7 @@ export default defineComponent({ onMounted(() => { nextTick(() => { if (imageRef.value?.complete) { - onLoad(); + triggerLoad(); } }); }); diff --git a/packages/vant/src/image/README.md b/packages/vant/src/image/README.md index b74bc2c8d..9dc16c443 100644 --- a/packages/vant/src/image/README.md +++ b/packages/vant/src/image/README.md @@ -125,7 +125,7 @@ app.use(Lazyload); | Event | Description | Arguments | | ----- | ------------------------------ | ------------------- | | click | Emitted when image is clicked | _event: MouseEvent_ | -| load | Emitted when image loaded | - | +| load | Emitted when image loaded | _event: Event_ | | error | Emitted when image load failed | - | ### Slots diff --git a/packages/vant/src/image/README.zh-CN.md b/packages/vant/src/image/README.zh-CN.md index bb3c26d65..04750027e 100644 --- a/packages/vant/src/image/README.zh-CN.md +++ b/packages/vant/src/image/README.zh-CN.md @@ -151,7 +151,7 @@ app.use(Lazyload); | 事件名 | 说明 | 回调参数 | | ------ | ------------------ | ------------------- | | click | 点击图片时触发 | _event: MouseEvent_ | -| load | 图片加载完毕时触发 | - | +| load | 图片加载完毕时触发 | _event: Event_ | | error | 图片加载失败时触发 | - | ### Slots