From c2cafe289e2400196b4208ba1761fc9788543d2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=98=89=E6=B6=B5?= Date: Tue, 11 Feb 2020 10:21:49 +0800 Subject: [PATCH] feat(Form): support using uploader --- src/form/demo/FieldType.vue | 7 ++++++ src/form/test/__snapshots__/demo.spec.js.snap | 23 +++++++++++++++++++ src/uploader/index.js | 10 ++++++++ 3 files changed, 40 insertions(+) diff --git a/src/form/demo/FieldType.vue b/src/form/demo/FieldType.vue index f87243717..44b3e0b2b 100644 --- a/src/form/demo/FieldType.vue +++ b/src/form/demo/FieldType.vue @@ -43,6 +43,10 @@ + + + +
{{ $t('submit') }}
@@ -61,6 +65,7 @@ export default { slider: '滑块', stepper: '步进器', checkbox: '复选框', + uploader: '文件上传', fieldType: '表单项类型', checkboxGroup: '复选框组', requireCheckbox: '请勾选复选框', @@ -73,6 +78,7 @@ export default { slider: 'Slider', stepper: 'Stepper', checkbox: 'Checkbox', + uploader: 'Uploader', fieldType: 'Field Type', checkboxGroup: 'Checkbox Group', requireCheckbox: 'Checkbox is required', @@ -85,6 +91,7 @@ export default { radio: '1', slider: 50, stepper: 1, + uploader: [{ url: 'https://img.yzcdn.cn/vant/leaf.jpg' }], checkbox: false, checkboxGroup: [], switchChecked: false, diff --git a/src/form/test/__snapshots__/demo.spec.js.snap b/src/form/test/__snapshots__/demo.spec.js.snap index 67f34d8ff..35ccef950 100644 --- a/src/form/test/__snapshots__/demo.spec.js.snap +++ b/src/form/test/__snapshots__/demo.spec.js.snap @@ -46,6 +46,29 @@ exports[`renders demo correctly 1`] = ` +
+
复选框组
+
+
+
+
+ + +
+
+
+
+
单选框
diff --git a/src/uploader/index.js b/src/uploader/index.js index e5df5871c..410a2c75e 100644 --- a/src/uploader/index.js +++ b/src/uploader/index.js @@ -2,6 +2,9 @@ import { createNamespace, addUnit, noop } from '../utils'; import { toArray, readFile, isOversize, isImageFile } from './utils'; +// Mixins +import { FieldMixin } from '../mixins/field'; + // Components import Icon from '../icon'; import Image from '../image'; @@ -13,6 +16,8 @@ const [createComponent, bem] = createNamespace('uploader'); export default createComponent({ inheritAttrs: false, + mixins: [FieldMixin], + model: { prop: 'fileList', }, @@ -70,6 +75,11 @@ export default createComponent({ previewSizeWithUnit() { return addUnit(this.previewSize); }, + + // for form + value() { + return this.fileList; + }, }, methods: {