import OHeader from '@/components/o-header' import OSticky from '@/components/o-sticky' import OUpload from '@/components/o-upload' import request from '@/helpers/request' import { verifyUrl } from '@/helpers/toolsValidate' import router from '@/router' import { state } from '@/state' import { Button, Field, Form, showNotify, showToast } from 'vant' import { defineComponent, onMounted, reactive, ref, watch } from 'vue' import { useRoute, useRouter } from 'vue-router' import styles from './add-information.module.less' export default defineComponent({ name: 'add-information', props: { selectType: { type: String, default: 'add' }, selectItem: { type: Object, default: {} } }, emits: ['close', 'getList'], setup(props, { emit }) { const route = useRoute() const router = useRouter() const header = ref('添加资讯') const forms = reactive({ type: 'HOT_CONSULTATION', clientType: 'SCHOOL', coverImage: null, title: null, linkUrl: '', linkType: 'OUT', summary: null }) const onSubmit = async () => { if (!forms.coverImage) { showToast('请上传封面图片') return } else if (!forms.title) { showToast('请输入资讯标题') return } else if (!forms.summary) { showToast('请输入内容简介') return } else if (!forms.linkUrl) { showToast('请输入链接') return } else if (!verifyUrl(forms.linkUrl)) { showToast('链接输入有误') return } try { if (!route.query.id) { await request.post('/api-school/sysNewsInformation/save', { data: { ...forms } }) // showNotify({ type: 'primary', message: '添加成功' }) } else { await request.post('/api-school/sysNewsInformation/update', { data: { ...forms, id: route.query.id } }) // showNotify({ type: 'primary', message: '修改成功' }) } // emit('close') // emit('getList') router.back() } catch { // } } onMounted(async () => { if (route.query.id) { header.value = '编辑资讯' const { data } = await request.get( '/api-school/sysNewsInformation/detail/' + route.query.id ) console.log(data) forms.linkUrl = data.linkUrl forms.coverImage = data.coverImage forms.summary = data.summary forms.title = data.title } }) return () => (