php限制选择图片数量,ImagePicker组件,限制选择图片数量上限(selectable={images.length < 3} )失败...

罗昊空
2023-12-01

通过 selectable={images.length < 3} 限制了选择图片数量的上限为3,但是设置了 multiple={true} 属性,用户可以一次性大于3张图片,这样就突破了图片上限。代码如下:

在onChange事件里面加校验

`

multiple

files={files}

onChange={this.pictureOnChange}

selectable={files.length < 10}

/>

pictureOnChange = (files: {}[], operationType: string) => {

let allowedFiles = files;

if (operationType === 'add') {

const fileTooBig = files.some((file: any) => file.file.size > 1024 * 1000 * 10);

if (fileTooBig) {

notification.error({

message: '上传图片大小不可超过10M',

});

allowedFiles = files.filter((file: any) => file.file.size <= 1024 * 1000 * 10);

}

if (allowedFiles.length > 10) {

notification.error({

message: '最多上传10张图片',

});

allowedFiles = allowedFiles.slice(0, 10);

}

}

this.setState({

files: allowedFiles,

});

}

`

 类似资料: