@@ -333,12 +333,16 @@ const [BaseForm, baseFormApi] = useVbenForm({
333
333
{
334
334
component: ' Upload' ,
335
335
componentProps: {
336
+ // 更多属性见:https://ant.design/components/upload-cn
336
337
accept: ' .png,.jpg,.jpeg' ,
338
+ // 自动携带认证信息
337
339
customRequest: upload_file ,
338
340
disabled: false ,
339
341
maxCount: 1 ,
340
342
multiple: false ,
341
343
showUploadList: true ,
344
+ // 上传列表的内建样式,支持四种基本样式 text, picture, picture-card 和 picture-circle
345
+ listType: ' picture-card' ,
342
346
},
343
347
fieldName: ' files' ,
344
348
label: $t (' examples.form.file' ),
@@ -360,7 +364,7 @@ function onSubmit(values: Record<string, any>) {
360
364
const failedFiles = files .filter ((file ) => file .status !== ' done' );
361
365
362
366
const msg = [
363
- ... doneFiles .map ((file ) => file .response .url ),
367
+ ... doneFiles .map ((file ) => file .response ?. url || file .url ),
364
368
... failedFiles .map ((file ) => file .name ),
365
369
].join (' , ' );
366
370
@@ -374,7 +378,8 @@ function onSubmit(values: Record<string, any>) {
374
378
});
375
379
return ;
376
380
}
377
-
381
+ // 如果需要可提交前替换为需要的urls
382
+ values .files = doneFiles .map ((file ) => file .response ?.url || file .url );
378
383
message .success ({
379
384
content: ` form values: ${JSON .stringify (values )} ` ,
380
385
});
@@ -387,6 +392,14 @@ function handleSetFormValue() {
387
392
baseFormApi .setValues ({
388
393
checkboxGroup: [' 1' ],
389
394
datePicker: dayjs (' 2022-01-01' ),
395
+ files: [
396
+ {
397
+ name: ' example.png' ,
398
+ status: ' done' ,
399
+ uid: ' -1' ,
400
+ url: ' https://unpkg.com/@vbenjs/[email protected] /source/logo-v1.webp' ,
401
+ },
402
+ ],
390
403
mentions: ' @afc163' ,
391
404
number: 3 ,
392
405
options: ' 1' ,
0 commit comments