Showing
3 changed files
with
25 additions
and
5 deletions
This diff is collapsed. Click to expand it.
| ... | @@ -7,7 +7,7 @@ import PickerField from '@/components/PickerField/index.vue' | ... | @@ -7,7 +7,7 @@ import PickerField from '@/components/PickerField/index.vue' |
| 7 | import AreaPickerField from '@/components/AreaPickerField/index.vue' | 7 | import AreaPickerField from '@/components/AreaPickerField/index.vue' |
| 8 | import DatePickerField from '@/components/DatePickerField/index.vue' | 8 | import DatePickerField from '@/components/DatePickerField/index.vue' |
| 9 | import TimePickerField from '@/components/TimePickerField/index.vue' | 9 | import TimePickerField from '@/components/TimePickerField/index.vue' |
| 10 | -// import DateTimePickerField from '@/components/DateTimePickerField/index.vue' | 10 | +import DateTimePickerField from '@/components/DateTimePickerField/index.vue' |
| 11 | // import ImageUploaderField from '@/components/ImageUploaderField/index.vue' | 11 | // import ImageUploaderField from '@/components/ImageUploaderField/index.vue' |
| 12 | // import FileUploaderField from '@/components/FileUploaderField/index.vue' | 12 | // import FileUploaderField from '@/components/FileUploaderField/index.vue' |
| 13 | import PhoneField from '@/components/PhoneField/index.vue' | 13 | import PhoneField from '@/components/PhoneField/index.vue' |
| ... | @@ -102,9 +102,9 @@ export function createComponentType(data) { | ... | @@ -102,9 +102,9 @@ export function createComponentType(data) { |
| 102 | if (item.component_props.tag === 'time') { | 102 | if (item.component_props.tag === 'time') { |
| 103 | item.component = TimePickerField | 103 | item.component = TimePickerField |
| 104 | } | 104 | } |
| 105 | - // if (item.component_props.tag === 'datetime') { | 105 | + if (item.component_props.tag === 'datetime') { |
| 106 | - // item.component = DateTimePickerField | 106 | + item.component = DateTimePickerField |
| 107 | - // } | 107 | + } |
| 108 | // if (item.component_props.tag === 'image_uploader') { | 108 | // if (item.component_props.tag === 'image_uploader') { |
| 109 | // item.component = ImageUploaderField | 109 | // item.component = ImageUploaderField |
| 110 | // } | 110 | // } | ... | ... |
| 1 | <!-- | 1 | <!-- |
| 2 | * @Date: 2023-03-24 09:19:27 | 2 | * @Date: 2023-03-24 09:19:27 |
| 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com | 3 | * @LastEditors: hookehuyr hookehuyr@gmail.com |
| 4 | - * @LastEditTime: 2023-04-07 16:12:27 | 4 | + * @LastEditTime: 2023-04-07 17:26:07 |
| 5 | * @FilePath: /custom_form/src/pages/table/index.vue | 5 | * @FilePath: /custom_form/src/pages/table/index.vue |
| 6 | * @Description: 文件描述 | 6 | * @Description: 文件描述 |
| 7 | --> | 7 | --> |
| ... | @@ -138,6 +138,7 @@ const email = ref([]); | ... | @@ -138,6 +138,7 @@ const email = ref([]); |
| 138 | const address = ref([]); | 138 | const address = ref([]); |
| 139 | const date = ref([]); | 139 | const date = ref([]); |
| 140 | const time = ref([]); | 140 | const time = ref([]); |
| 141 | +const datetime = ref([]); | ||
| 141 | const area_picker = ref([]); | 142 | const area_picker = ref([]); |
| 142 | const image_uploader = ref([]); | 143 | const image_uploader = ref([]); |
| 143 | const file_uploader = ref([]); | 144 | const file_uploader = ref([]); |
| ... | @@ -182,6 +183,9 @@ const setRefMap = (el, item) => { | ... | @@ -182,6 +183,9 @@ const setRefMap = (el, item) => { |
| 182 | if (item.component_props.tag === "time") { | 183 | if (item.component_props.tag === "time") { |
| 183 | time.value.push(el); | 184 | time.value.push(el); |
| 184 | } | 185 | } |
| 186 | + if (item.component_props.tag === "datetime") { | ||
| 187 | + datetime.value.push(el); | ||
| 188 | + } | ||
| 185 | if (item.component_props.tag === "area_picker") { | 189 | if (item.component_props.tag === "area_picker") { |
| 186 | area_picker.value.push(el); | 190 | area_picker.value.push(el); |
| 187 | } | 191 | } |
| ... | @@ -459,6 +463,9 @@ const onActive = (item) => { | ... | @@ -459,6 +463,9 @@ const onActive = (item) => { |
| 459 | if (item.key === "time") { | 463 | if (item.key === "time") { |
| 460 | postData.value[item.filed_name] = item.value; | 464 | postData.value[item.filed_name] = item.value; |
| 461 | } | 465 | } |
| 466 | + if (item.key === "datetime") { | ||
| 467 | + postData.value[item.filed_name] = item.value; | ||
| 468 | + } | ||
| 462 | if (item.key === "image_uploader") { | 469 | if (item.key === "image_uploader") { |
| 463 | postData.value[item.filed_name] = item.value; | 470 | postData.value[item.filed_name] = item.value; |
| 464 | } | 471 | } |
| ... | @@ -641,6 +648,19 @@ const validOther = () => { | ... | @@ -641,6 +648,19 @@ const validOther = () => { |
| 641 | } | 648 | } |
| 642 | }); | 649 | }); |
| 643 | } | 650 | } |
| 651 | + if (datetime.value) { | ||
| 652 | + // 日期时间选择器 | ||
| 653 | + datetime.value.forEach((item, index) => { | ||
| 654 | + if (!datetime.value[index].validDateTime()) { | ||
| 655 | + valid = { | ||
| 656 | + status: datetime.value[index].validDateTime(), | ||
| 657 | + key: "datetime", | ||
| 658 | + id: datetime.value[index]?.id | ||
| 659 | + }; | ||
| 660 | + return false; | ||
| 661 | + } | ||
| 662 | + }); | ||
| 663 | + } | ||
| 644 | if (area_picker.value) { | 664 | if (area_picker.value) { |
| 645 | // 省市区地址 | 665 | // 省市区地址 |
| 646 | area_picker.value.forEach((item, index) => { | 666 | area_picker.value.forEach((item, index) => { | ... | ... |
-
Please register or login to post a comment