import Modal from "@/components/Provider/Modal"; import { css } from "@linaria/core"; import { Button, Checkbox, Form, Input, Select } from "ant-design-vue"; import { defineComponent, onMounted, reactive, ref } from "vue"; import { any } from "vue-types"; import UploadImage from "./UploadImage"; import { uploader } from "../objects"; const layout = { labelCol: { span: 6 }, wrapperCol: { span: 18 }, }; export default defineComponent({ props: { data: any(), }, setup(props) { const modal = Modal.use(); const formState: { [name: string]: any } = reactive({ formData: { ...{ name: "", cover: "", subName: "", sort: 0, type: "list", isHome: false, }, ...props.data, }, }); const rules = reactive({ name: [{ required: true, message: "名称不能为空", trigger: "change" }], cover: [{ required: false }], subName: [{ required: false }], isHome: [{ required: false }], type: [{ required: true, message: "类型不能为空", trigger: "change" }], }); const { validate, validateInfos } = Form.useForm(formState.formData, rules); function submit() { validate().then(async () => { await uploader.uploadBlobImages(formState.formData); modal.submit(formState.formData); }); } const changeBanner = (v: string) => { formState.formData.cover = v; }; return () => { return (
); }; }, }); const EditStyle = css` width: 500px; `;