|
@@ -30,6 +30,7 @@
|
|
|
class="avatar-uploader"
|
|
|
action="/api/files/avatar/upload"
|
|
|
:show-file-list="false"
|
|
|
+ :headers="myHeaders"
|
|
|
:on-success="handleAvatarSuccess"
|
|
|
:before-upload="beforeAvatarUpload">
|
|
|
<img v-if="formdata[item.name] && formdata[item.name] !== ''" :src="formdata[item.name]" class="avatar">
|
|
@@ -37,6 +38,17 @@
|
|
|
</el-upload>
|
|
|
<!-- 富文本 -->
|
|
|
<editoritem v-if="item.name == 'content'" @change="editChage" :value="formdata[item.name]"></editoritem>
|
|
|
+ <!-- 附件上传 -->
|
|
|
+ <el-upload
|
|
|
+ v-if="item.name == 'annex'"
|
|
|
+ :headers="myHeaders"
|
|
|
+ class="upload-demo"
|
|
|
+ action="/api/files/avatar/upload"
|
|
|
+ :on-success="handleAnnexSuccess"
|
|
|
+ :on-remove="handleRemove"
|
|
|
+ :file-list="fileList">
|
|
|
+ <el-button size="small" type="primary">附件上传</el-button>
|
|
|
+ </el-upload>
|
|
|
</template>
|
|
|
</formData>
|
|
|
</template>
|
|
@@ -49,6 +61,7 @@ import dialogAndDrawer from '@components/dialogAndDrawer.vue';
|
|
|
import formData from '@components/formData/index.vue';
|
|
|
import editoritem from '@components/editoritem.vue';
|
|
|
import { mapState, mapActions } from 'vuex';
|
|
|
+const token = sessionStorage.getItem('token');
|
|
|
export default {
|
|
|
components: {
|
|
|
filterList,
|
|
@@ -58,6 +71,8 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ fileList: [],
|
|
|
+ myHeaders: { Authorization: token },
|
|
|
title: '',
|
|
|
visibleSync: false,
|
|
|
filed: [
|
|
@@ -72,9 +87,29 @@ export default {
|
|
|
{ name: 'describe', label: '描述' },
|
|
|
{ name: 'bind', label: '绑定栏目', formater: 'dict:column' },
|
|
|
{ name: 'date', label: '时间', formater: 'date:datetime' },
|
|
|
- { name: 'content', label: '内容', formater: 'slot' }
|
|
|
+ { name: 'content', label: '内容', formater: 'slot' },
|
|
|
+ { name: 'annex', label: '附件', formater: 'slot' }
|
|
|
],
|
|
|
- formrules: {}
|
|
|
+ formrules: {
|
|
|
+ thumbnail: [
|
|
|
+ { required: true, message: '请上传缩略图', trigger: 'chage' }
|
|
|
+ ],
|
|
|
+ title: [
|
|
|
+ { required: true, message: '请输入标题', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ describe: [
|
|
|
+ { required: true, message: '请输入描述', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ bind: [
|
|
|
+ { required: true, message: '请绑定栏目', trigger: 'chage' }
|
|
|
+ ],
|
|
|
+ date: [
|
|
|
+ { required: true, message: '请输入时间', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ content: [
|
|
|
+ { required: true, message: '请输入内容', trigger: 'blur' }
|
|
|
+ ]
|
|
|
+ }
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -141,11 +176,22 @@ export default {
|
|
|
editChage (e) {
|
|
|
this.$refs.formData.setForm('content', e);
|
|
|
},
|
|
|
+ // 附件上传
|
|
|
+ handleAnnexSuccess(res, file) {
|
|
|
+ this.$refs.formData.setForm('annex', res.data.filePath);
|
|
|
+ this.fileList.push({ name: res.data.name, url: res.data.filePath });
|
|
|
+ },
|
|
|
+ // 删除附件列表
|
|
|
+ handleRemove(file, fileList) {
|
|
|
+ console.log(123);
|
|
|
+ this.$refs.formData.setForm('annex', null);
|
|
|
+ delete this.fileList[0];
|
|
|
+ },
|
|
|
// 缩略图上传
|
|
|
handleAvatarSuccess(res, file) {
|
|
|
- // this.imageUrl = URL.createObjectURL(file.raw);
|
|
|
this.$refs.formData.setForm('thumbnail', res.data.filePath);
|
|
|
},
|
|
|
+ // 缩略图上传限制
|
|
|
beforeAvatarUpload(file) {
|
|
|
const isJPG = file.type === 'image/jpeg';
|
|
|
const isLt2M = file.size / 1024 / 1024 < 2;
|