feat(Uploader): add deletable prop (#4925)

This commit is contained in:
neverland 2019-11-05 15:54:40 +08:00 committed by GitHub
parent fbb34a0f90
commit 0d3eec10b5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 1 deletions

View File

@ -118,6 +118,7 @@ export default {
| preview-full-image | Whethe to show full screen image preview when click image | *boolean* | `true` | - |
| multiple | Whether to enable multiple selection pictures | *boolean* | `false` | - |
| disabled | Whether to disabled the upload | *boolean* | `false` | - |
| deletable | Whether to show delete icon | *boolean* | `true` | 2.2.12 |
| capture | Capturecan be set to `camera` | *string* | - | - |
| after-read | Hook after reading the file | *Function* | - | - |
| before-read | Hook before reading the file, return false to stop reading the file, can return Promise | *Function* | - | - |

View File

@ -134,6 +134,7 @@ export default {
| preview-full-image | 是否在点击预览图后展示全屏图片预览 | *boolean* | `true` | 2.1.5 |
| multiple | 是否开启图片多选,部分安卓机型不支持 | *boolean* | `false` | - |
| disabled | 是否禁用文件上传 | *boolean* | `false` | - |
| deletable | 是否展示删除按钮 | *boolean* | `true` | 2.2.12 |
| capture | 图片选取模式,可选值为`camera`(直接调起摄像头) | *string* | - | - |
| after-read | 文件读取完成后的回调函数 | *Function* | - | - |
| before-read | 文件读取前的回调函数,返回`false`可终止文件读取,支持返回`Promise` | *Function* | - | - |

View File

@ -40,6 +40,10 @@ export default createComponent({
type: Number,
default: Number.MAX_VALUE
},
deletable: {
type: Boolean,
default: true
},
previewImage: {
type: Boolean,
default: true
@ -214,7 +218,7 @@ export default createComponent({
},
genPreviewItem(item, index) {
const DeleteIcon = (
const DeleteIcon = this.deletable && (
<Icon
name="clear"
class={bem('preview-delete')}

View File

@ -270,6 +270,19 @@ it('preview-size prop', async () => {
expect(wrapper).toMatchSnapshot();
});
it('deletable prop', () => {
const wrapper = mount(Uploader, {
propsData: {
fileList: [{ url: IMAGE }]
}
});
expect(wrapper.find('.van-uploader__preview-delete').element).toBeTruthy();
wrapper.setProps({ deletable: false });
expect(wrapper.find('.van-uploader__preview-delete').element).toBeFalsy();
});
it('delete preview image', () => {
const wrapper = mount(Uploader, {
propsData: {