mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-18 15:26:48 +08:00
-- 附件
This commit is contained in:
@@ -88,8 +88,8 @@ watch(files, () => {
|
|||||||
watch(props, init)
|
watch(props, init)
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
if (props.value && props.value !== files.value.map(e => e.url).join(',')) {
|
if (props.value !== files.value.map(e => e.url).join(',')) {
|
||||||
files.value = props.value.split(',').map(e => ({name: e, url: e}))
|
files.value = props.value ? props.value.split(',').map(e => ({name: e, url: e})) : []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -310,52 +310,7 @@
|
|||||||
<span style="margin-right: 10px">附件</span>
|
<span style="margin-right: 10px">附件</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="item_inp">
|
<div class="item_inp">
|
||||||
<a-upload
|
<FJUpload v-model:value="attach"></FJUpload>
|
||||||
multiple
|
|
||||||
:show-upload-list="false"
|
|
||||||
:before-upload="beforeUpload2"
|
|
||||||
>
|
|
||||||
<div class="accessory" style="cursor: pointer">
|
|
||||||
<div class="accessory_icon">
|
|
||||||
<img
|
|
||||||
src="@/assets/images/coursewareManage/enclosure.png"
|
|
||||||
alt="enclosure"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<span style="color: #4ea6ff">添加附件</span>
|
|
||||||
</div>
|
|
||||||
</a-upload>
|
|
||||||
<span>
|
|
||||||
支持.pdf,.ppt,.pptx,.doc,.docx,.xls,.xlsx,.jpg,.jpeg,.png,.gif,.zip
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mbl_items12">
|
|
||||||
<div
|
|
||||||
class="i12_box1"
|
|
||||||
v-for="(item, index) in imgList"
|
|
||||||
:key="index"
|
|
||||||
>
|
|
||||||
<div class="file_img"></div>
|
|
||||||
<div class="file_detail">
|
|
||||||
<div class="file_updata">
|
|
||||||
<div class="updatabox">
|
|
||||||
<div class="updatacolor"></div>
|
|
||||||
<div class="updataxq">上传完成</div>
|
|
||||||
</div>
|
|
||||||
<div class="upjd">
|
|
||||||
<span style="margin: auto 5px">100%</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- 条件渲染 e -->
|
|
||||||
</div>
|
|
||||||
<div class="file_operation">
|
|
||||||
<div class="fobox">
|
|
||||||
<span style="color: #4ea6ff" @click="handleDel(index)">
|
|
||||||
删除
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -415,17 +370,20 @@ import * as api1 from "../../api/index1";
|
|||||||
import "@wangeditor/editor/dist/css/style.css";
|
import "@wangeditor/editor/dist/css/style.css";
|
||||||
import {Editor, Toolbar} from "@wangeditor/editor-for-vue";
|
import {Editor, Toolbar} from "@wangeditor/editor-for-vue";
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
|
import FJUpload from "@/components/common/FJUpload";
|
||||||
import * as moment from "moment";
|
import * as moment from "moment";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
components: {
|
components: {
|
||||||
Editor,
|
Editor,
|
||||||
Toolbar,
|
Toolbar,
|
||||||
|
FJUpload,
|
||||||
ProjectManager,
|
ProjectManager,
|
||||||
},
|
},
|
||||||
setup(props, {expose, emit}) {
|
setup(props, {expose, emit}) {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
hideshow: true,
|
hideshow: true,
|
||||||
|
attach: '',
|
||||||
ft_hs: false,
|
ft_hs: false,
|
||||||
addLoading: false,
|
addLoading: false,
|
||||||
statusJuJue: 0,
|
statusJuJue: 0,
|
||||||
@@ -484,6 +442,7 @@ export default defineComponent({
|
|||||||
state.tags_val = [];
|
state.tags_val = [];
|
||||||
state.qdms_inputV6 = "";
|
state.qdms_inputV6 = "";
|
||||||
state.imgList = [];
|
state.imgList = [];
|
||||||
|
state.attach = '';
|
||||||
|
|
||||||
valueHtml.value = "";
|
valueHtml.value = "";
|
||||||
};
|
};
|
||||||
@@ -534,45 +493,6 @@ export default defineComponent({
|
|||||||
});
|
});
|
||||||
// 富文本 eeeeeeeeeeeeee
|
// 富文本 eeeeeeeeeeeeee
|
||||||
|
|
||||||
const beforeUpload2 = (file) => {
|
|
||||||
const fileType = [
|
|
||||||
"jpg",
|
|
||||||
"jpeg",
|
|
||||||
"png",
|
|
||||||
"gif",
|
|
||||||
"pdf",
|
|
||||||
"ppt",
|
|
||||||
"pptx",
|
|
||||||
"doc",
|
|
||||||
"docx",
|
|
||||||
"xls",
|
|
||||||
"xlsx",
|
|
||||||
"zip",
|
|
||||||
];
|
|
||||||
if (!fileType.includes(file.name.split(".")[1])) {
|
|
||||||
message.error(
|
|
||||||
"仅支持.pdf,.ppt,.pptx,.doc,.docx,.xls,.xlsx,.jpg,.jpeg,.png,.gif,.zip格式!"
|
|
||||||
);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
const formData = new FormData();
|
|
||||||
formData.append("file", file);
|
|
||||||
fileUp(formData).then((res) => {
|
|
||||||
if (res.data.code === 200) {
|
|
||||||
state.imgList.push({
|
|
||||||
img: res.data.data,
|
|
||||||
name: file.name,
|
|
||||||
size: file.size,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
const handleDel = (index) => {
|
|
||||||
state.imgList.splice(index, 1);
|
|
||||||
};
|
|
||||||
|
|
||||||
//获取分类、场景、封面图、-----------字典配置-------------------------------
|
//获取分类、场景、封面图、-----------字典配置-------------------------------
|
||||||
const optionsUrl = ref([]);
|
const optionsUrl = ref([]);
|
||||||
const options2 = ref([]);
|
const options2 = ref([]);
|
||||||
@@ -672,7 +592,7 @@ export default defineComponent({
|
|||||||
teacherId: state.member.value,
|
teacherId: state.member.value,
|
||||||
teacher: state.member.name,
|
teacher: state.member.name,
|
||||||
intro: state.qdms_inputV6,
|
intro: state.qdms_inputV6,
|
||||||
attach: files,
|
attach: state.attach,
|
||||||
outline: valueHtml.value,
|
outline: valueHtml.value,
|
||||||
};
|
};
|
||||||
console.log("postData");
|
console.log("postData");
|
||||||
@@ -729,20 +649,8 @@ export default defineComponent({
|
|||||||
state.tags_val = item.tips ? item.tips.split(",") : [];
|
state.tags_val = item.tips ? item.tips.split(",") : [];
|
||||||
state.qdms_inputV6 = item.intro;
|
state.qdms_inputV6 = item.intro;
|
||||||
state.member = {value: item.teacherId, name: item.teacher};
|
state.member = {value: item.teacherId, name: item.teacher};
|
||||||
if (item.attach === "") {
|
|
||||||
state.imgList = [];
|
|
||||||
} else {
|
|
||||||
if (item.attach.indexOf(",")) {
|
|
||||||
const arr = item.attach.split(",");
|
|
||||||
arr.forEach((item) => {
|
|
||||||
state.imgList.push({ img: item });
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
state.imgList = [{ img: item.attach }];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
valueHtml.value = item.outline;
|
valueHtml.value = item.outline;
|
||||||
|
state.attach = item.attach;
|
||||||
state.ft_hs = true;
|
state.ft_hs = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -794,12 +702,9 @@ export default defineComponent({
|
|||||||
handleTagChange,
|
handleTagChange,
|
||||||
handleTagClose,
|
handleTagClose,
|
||||||
handleCreated,
|
handleCreated,
|
||||||
beforeUpload2,
|
|
||||||
handleDel,
|
|
||||||
handlePush,
|
handlePush,
|
||||||
submitReview,
|
submitReview,
|
||||||
reviewClick,
|
reviewClick,
|
||||||
|
|
||||||
editorRef,
|
editorRef,
|
||||||
valueHtml,
|
valueHtml,
|
||||||
mode: "simple", // 或 'simple'
|
mode: "simple", // 或 'simple'
|
||||||
|
|||||||
Reference in New Issue
Block a user