diff --git a/src/sku/README.zh-CN.md b/src/sku/README.zh-CN.md index e338aa9a9..5fecdfc64 100644 --- a/src/sku/README.zh-CN.md +++ b/src/sku/README.zh-CN.md @@ -340,6 +340,14 @@ messageConfig: { setTimeout(() => resolve('https://img01.yzcdn.cn/upload_files/2017/02/21/FjKTOxjVgnUuPmHJRdunvYky9OHP.jpg!100x100.jpg'), 1000); }); }, + // 可选项,自定义图片上传逻辑,使用此选项时,会禁用原生图片选择 + customUpload: () => { + return new Promise((resolve) => { + setTimeout(() => { + resolve('https://img01.yzcdn.cn/vant/leaf.jpg'); + }, 1000); + }); + }, // 最大上传体积 (MB) uploadMaxSize: 3, // placeholder 配置 diff --git a/src/sku/components/SkuImgUploader.js b/src/sku/components/SkuImgUploader.js index b017c1eba..212e93d61 100644 --- a/src/sku/components/SkuImgUploader.js +++ b/src/sku/components/SkuImgUploader.js @@ -12,6 +12,7 @@ export default createComponent({ props: { value: String, uploadImg: Function, + customUpload: Function, maxSize: { type: Number, default: 6, @@ -56,6 +57,15 @@ export default createComponent({ onDelete() { this.$emit('input', ''); }, + + onClickUpload() { + if (this.customUpload) { + this.customUpload().then((url) => { + this.fileList.push({ url }); + this.$emit('input', url); + }); + } + }, }, render() { @@ -63,10 +73,12 @@ export default createComponent({ ); }, diff --git a/src/sku/components/SkuMessages.js b/src/sku/components/SkuMessages.js index de63f77fd..8366d1c3b 100644 --- a/src/sku/components/SkuMessages.js +++ b/src/sku/components/SkuMessages.js @@ -59,6 +59,8 @@ export default createComponent({ messages[`message_${index}`] = item.value; }); + console.log('messages', messages); + return messages; }, @@ -141,6 +143,7 @@ export default createComponent({ vModel={this.messageValues[index].value} maxSize={this.messageConfig.uploadMaxSize} uploadImg={this.messageConfig.uploadImg} + customUpload={this.messageConfig.customUpload} />
{t('imageLabel')}