feat(Uploader): add click-upload event (#9260)

This commit is contained in:
neverland 2021-08-15 09:37:13 +08:00 committed by GitHub
parent ee40d1e974
commit 8aa2c14cbc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 8 deletions

View File

@ -280,6 +280,7 @@ export default {
| Event | Description | Arguments | | Event | Description | Arguments |
| --- | --- | --- | | --- | --- | --- |
| oversize | Emitted when file size over limit | Same as after-read | | oversize | Emitted when file size over limit | Same as after-read |
| click-upload `v2.12.26` | Emitted when click upload area | _event: MouseEvent_ |
| click-preview | Emitted when preview image is clicked | Same as after-read | | click-preview | Emitted when preview image is clicked | Same as after-read |
| close-preview | Emitted when the full screen image preview is closed | - | | close-preview | Emitted when the full screen image preview is closed | - |
| delete | Emitted when preview file is deleted | Same as after-read | | delete | Emitted when preview file is deleted | Same as after-read |

View File

@ -308,8 +308,9 @@ export default {
### Events ### Events
| 事件名 | 说明 | 回调参数 | | 事件名 | 说明 | 回调参数 |
| ------------- | ---------------------- | --------------- | | ----------------------- | ---------------------- | ------------------- |
| oversize | 文件大小超过限制时触发 | 同 `after-read` | | oversize | 文件大小超过限制时触发 | 同 `after-read` |
| click-upload `v2.12.26` | 点击上传区域时触发 | _event: MouseEvent_ |
| click-preview | 点击预览图时触发 | 同 `after-read` | | click-preview | 点击预览图时触发 | 同 `after-read` |
| close-preview | 关闭全屏图片预览时触发 | - | | close-preview | 关闭全屏图片预览时触发 | - |
| delete | 删除文件预览时触发 | 同 `after-read` | | delete | 删除文件预览时触发 | 同 `after-read` |

View File

@ -249,6 +249,10 @@ export default createComponent({
} }
}, },
onClickUpload(event) {
this.$emit('click-upload', event);
},
onPreviewImage(item) { onPreviewImage(item) {
if (!this.previewFullImage) { if (!this.previewFullImage) {
return; return;
@ -406,7 +410,11 @@ export default createComponent({
if (slot) { if (slot) {
return ( return (
<div class={bem('input-wrapper')} key="input-wrapper"> <div
class={bem('input-wrapper')}
key="input-wrapper"
onClick={this.onClickUpload}
>
{slot} {slot}
{Input} {Input}
</div> </div>
@ -423,7 +431,11 @@ export default createComponent({
} }
return ( return (
<div class={bem('upload', { readonly: this.readonly })} style={style}> <div
class={bem('upload', { readonly: this.readonly })}
style={style}
onClick={this.onClickUpload}
>
<Icon name={this.uploadIcon} class={bem('upload-icon')} /> <Icon name={this.uploadIcon} class={bem('upload-icon')} />
{this.uploadText && ( {this.uploadText && (
<span class={bem('upload-text')}>{this.uploadText}</span> <span class={bem('upload-text')}>{this.uploadText}</span>