|
@@ -0,0 +1,91 @@
|
|
|
+<template>
|
|
|
+ <div id="otheruserForm">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24" class="form">
|
|
|
+ <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
|
|
|
+ <el-form-item label="标题" prop="name">
|
|
|
+ <el-input v-model="ruleForm.title" placeholder="请输入标题"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="图片" prop="image">
|
|
|
+ <upload :limit="1" :data="ruleForm.image" type="image" :url="`/files/teacher/upload`" @upload="uploadSuccess"></upload>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="来源" prop="source">
|
|
|
+ <el-input v-model="ruleForm.source" placeholder="请输入来源"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="发布日期" prop="publish_time">
|
|
|
+ <el-input v-model="ruleForm.publish_time" placeholder="请输入发布日期"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="发布状态" prop="type">
|
|
|
+ <el-select v-model="ruleForm.type" placeholder="请选择发布状态">
|
|
|
+ <el-option label="未发布" value="0"></el-option>
|
|
|
+ <el-option label="发布" value="1"></el-option>
|
|
|
+ <el-option label="下架" value="2"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="简介">
|
|
|
+ <!-- <span v-if="toDisplay()"> -->
|
|
|
+ <wang-editor v-model="ruleForm.description" placeholder="请输入简介"></wang-editor>
|
|
|
+ <!-- </span> -->
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button size="small" @click="resetForm('ruleForm')">取消</el-button>
|
|
|
+ <el-button type="primary" size="small" @click="submitForm('ruleForm')">提交</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import WangEditor from '@/components/wang-editor.vue';
|
|
|
+import upload from '@/components/upload.vue';
|
|
|
+export default {
|
|
|
+ name: 'otheruserForm',
|
|
|
+ props: {
|
|
|
+ ruleForm: null,
|
|
|
+ },
|
|
|
+ components: {
|
|
|
+ WangEditor, //富文本
|
|
|
+ upload, //图片
|
|
|
+ },
|
|
|
+ data: () => ({
|
|
|
+ rules: {
|
|
|
+ title: [{ required: true, message: '请输入标题', trigger: 'blur' }],
|
|
|
+ source: [{ required: true, message: '请输入来源', trigger: 'blur' }],
|
|
|
+ publish_time: [{ required: true, message: '请输入发布日期', trigger: 'blur' }],
|
|
|
+ description: [{ required: true, message: '请输入简介', trigger: 'blur' }],
|
|
|
+ type: [{ required: true, message: '请选择发布状态', trigger: 'change' }],
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ created() {},
|
|
|
+ computed: {},
|
|
|
+ methods: {
|
|
|
+ submitForm() {
|
|
|
+ this.$emit('submitForm', { data: this.ruleForm });
|
|
|
+ },
|
|
|
+ resetForm() {
|
|
|
+ this.$emit('resetForm');
|
|
|
+ },
|
|
|
+ uploadSuccess({ type, data }) {
|
|
|
+ if (type !== 'logo') {
|
|
|
+ let arr = _.get(this.ruleForm, type);
|
|
|
+ if (arr !== undefined) {
|
|
|
+ this.ruleForm[type].push({ name: data.name, uri: data.uri });
|
|
|
+ } else {
|
|
|
+ let newArr = [{ name: data.name, uri: data.uri }];
|
|
|
+ this.$set(this.ruleForm, `${type}`, newArr);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$set(this.ruleForm, `${type}`, data.uri);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
+.form {
|
|
|
+ padding: 0 200px 0 0;
|
|
|
+}
|
|
|
+</style>
|