| | |
| | | <!-- åºæ¬ä¿¡æ¯ --> |
| | | <div v-if="Editprogress == 1"> |
| | | <div class="leftvlue-jbxx">åºæ¬ä¿¡æ¯</div> |
| | | <el-divider></el-divider> |
| | | <el-form |
| | | :model="ruleForm" |
| | | :rules="rules" |
| | |
| | | <el-col :span="4"> |
| | | <div class="leftvlue-jbxx">宣æå
容</div> |
| | | </el-col> |
| | | <el-col :offset="16" :span="4"> |
| | | <el-upload |
| | | class="upload-demo" |
| | | :action="uploadImgUrlword" |
| | | :on-success="uploadEditorSuccessword" |
| | | :on-error="uploadEditorErrorword" |
| | | :before-upload="beforeEditorUploadword" |
| | | :headers="headers" |
| | | > |
| | | <el-button size="small" type="primary">wordæä»¶ä¸ä¼ </el-button> |
| | | </el-upload> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | <div> |
| | |
| | | label-width="100px" |
| | | class="demo-ruleForm" |
| | | > |
| | | <el-row :gutter="20"> |
| | | <!-- <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="èµæå½¢å¼" prop="region"> |
| | | <el-select |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <div> |
| | | <el-button @click="laststep('ruleForm')">ä¸ä¸æ¥</el-button> |
| | | <el-button |
| | | type="success" |
| | | @click="Departmenttreatment('ruleForm')" |
| | | >ä¿å</el-button |
| | | > |
| | | <el-button |
| | | type="warning" |
| | | @click="Departmenttreatment('ruleForm')" |
| | | >å¦åæ°çæ¬</el-button |
| | | > |
| | | <el-button type="info" @click="closeFm('ruleForm')" |
| | | >å
³é</el-button |
| | | > |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-col :span="12"> --> |
| | | |
| | | <!-- </el-col> |
| | | </el-row> --> |
| | | </el-form> |
| | | </div> |
| | | <div> |
| | | <el-upload |
| | | class="upload-demo" |
| | | :action="uploadImgUrlword" |
| | | :on-success="uploadEditorSuccessword" |
| | | :on-error="uploadEditorErrorword" |
| | | :before-upload="beforeEditorUploadword" |
| | | :headers="headers" |
| | | > |
| | | <el-button size="small" type="primary">wordæä»¶ä¸ä¼ </el-button> |
| | | </el-upload> |
| | | <!-- <div> |
| | | <div id="quillEditorQiniu"> |
| | | <!-- åºäºelementUiçä¸ä¼ ç»ä»¶ el-upload begin--> |
| | | <el-upload |
| | | class="avatar-uploader" |
| | | :action="uploadImgUrl" |
| | |
| | | :headers="headers" |
| | | > |
| | | </el-upload> |
| | | <!-- åºäºelementUiçä¸ä¼ ç»ä»¶ el-upload end--> |
| | | <quill-editor |
| | | class="editor" |
| | | v-model="content" |
| | |
| | | > |
| | | </quill-editor> |
| | | </div> |
| | | </div> --> |
| | | <!-- æ°ç»ä»¶ --> |
| | | <div style="border: 1px solid #ccc; margin: 10px"> |
| | | <Toolbar |
| | | style="border-bottom: 1px solid #ccc" |
| | | :editor="editor" |
| | | :defaultConfig="toolbarConfig" |
| | | :mode="modes" |
| | | /> |
| | | <Editor |
| | | style="height: 500px; overflow-y: hidden" |
| | | v-model="content" |
| | | :defaultConfig="editorConfig" |
| | | :mode="modes" |
| | | @onCreated="onCreated" |
| | | /> |
| | | </div> |
| | | <div> |
| | | <el-button @click="laststep('ruleForm')">ä¸ä¸æ¥</el-button> |
| | | <el-button type="success" @click="Departmenttreatment('ruleForm')" |
| | | >ä¿å</el-button |
| | | > |
| | | <el-button type="warning" @click="Departmenttreatment('ruleForm')" |
| | | >å¦åæ°çæ¬</el-button |
| | | > |
| | | <el-button type="info" @click="closeFm('ruleForm')">å
³é</el-button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | |
| | | <script> |
| | | import { quillEditor } from "vue-quill-editor"; |
| | | import { Editor, Toolbar } from "@wangeditor/editor-for-vue"; |
| | | import axios from "axios"; |
| | | |
| | | import { |
| | |
| | | |
| | | export default { |
| | | name: "aEducationinfo", |
| | | components: { OptionalForm }, |
| | | components: { OptionalForm, Editor, Toolbar }, |
| | | data() { |
| | | return { |
| | | editor: null, |
| | | content: "<p>hello</p>", |
| | | toolbarConfig: {}, |
| | | editorConfig: { |
| | | placeholder: "请è¾å
¥å
容...", |
| | | menus: [ |
| | | "head", |
| | | "bold", |
| | | "italic", |
| | | "underline", |
| | | "image", |
| | | "link", |
| | | "list", |
| | | "undo", |
| | | "redo", |
| | | "file", // æ·»å èªå®ä¹æä»¶ä¸ä¼ èå |
| | | ], |
| | | uploadImgServer: process.env.VUE_APP_BASE_API + "/common/uploadSort", // å¾çä¸ä¼ æ¥å£ |
| | | uploadImgHeaders: { |
| | | Authorization: "Bearer " + getToken(), |
| | | }, // èªå®ä¹ä¸ä¼ ç headers |
| | | uploadImgParams: { key: "value" }, // èªå®ä¹ä¸ä¼ çåæ° |
| | | uploadImgMaxSize: 2 * 1024 * 1024, // å¾çæå¤§å¤§å°ï¼åä½ Byte |
| | | uploadImgMaxLength: 1, // 䏿¬¡æå¤ä¸ä¼ å¾çæ°é |
| | | uploadImgTimeout: 3 * 60 * 1000, // è¶
æ¶æ¶é´ï¼åä½ ms |
| | | uploadImgHooks: { |
| | | customInsert: (insertImgFn, result) => { |
| | | const url = result.url; // è·åå¾çå°å |
| | | insertImgFn(url); // æå
¥å¾ç |
| | | }, |
| | | }, |
| | | customMenus: { |
| | | file: { |
| | | tip: "ä¸ä¼ æä»¶", |
| | | click: (editor) => { |
| | | const input = document.createElement("input"); |
| | | input.type = "file"; |
| | | input.accept = |
| | | "application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document"; // æ¯æçæä»¶ç±»å |
| | | input.onchange = (e) => { |
| | | const file = e.target.files[0]; |
| | | if (!file) return; |
| | | const formData = new FormData(); |
| | | formData.append("file", file); |
| | | |
| | | // ç¡®ä¿ process.env.VUE_APP_BASE_API æ¯æ£ç¡®ç |
| | | const uploadUrl = |
| | | process.env.VUE_APP_BASE_API + "/common/uploadSort"; |
| | | axios |
| | | .post(uploadUrl, formData, { |
| | | headers: { |
| | | Authorization: "Bearer " + getToken(), |
| | | }, |
| | | }) |
| | | .then((res) => { |
| | | const url = res.data.url; // è·åæä»¶å°å |
| | | // æå
¥æä»¶é¾æ¥ä½ä¸ºæ®éææ¬ |
| | | editor.txt.append(url + " "); |
| | | // æè
æå
¥æä»¶é¾æ¥ä½ä¸ºè¶
龿¥ |
| | | // editor.cmd.do('insertLink', { name: 'æä»¶é¾æ¥', url: url }); |
| | | }) |
| | | .catch((err) => { |
| | | console.error("æä»¶ä¸ä¼ 失败", err); |
| | | }); |
| | | }; |
| | | input.click(); |
| | | }, |
| | | }, |
| | | }, |
| | | }, |
| | | modes: "default", // or 'simple' |
| | | headers: { |
| | | Authorization: "Bearer " + getToken(), |
| | | }, |
| | |
| | | console.log(oldVal, "B"); |
| | | }, |
| | | }, |
| | | |
| | | beforeDestroy() { |
| | | const editor = this.editor; |
| | | if (editor == null) return; |
| | | editor.destroy(); // ç»ä»¶éæ¯æ¶ï¼åæ¶éæ¯ç¼è¾å¨ |
| | | }, |
| | | methods: { |
| | | onCreated(editor) { |
| | | this.editor = Object.seal(editor); // ä¸å®è¦ç¨ Object.seal()ï¼å¦å伿¥é |
| | | }, |
| | | |
| | | // --------------------------------- |
| | | processElement(element) { |
| | | return { ...element, isoperation: null }; |
| | | }, |
| | |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style src="@wangeditor/editor/dist/css/style.css"></style> |
| | | <style src="@/assets/styles/global.css"></style> |
| | | <style lang="scss" scoped> |
| | | .Questionnairemanagement { |
| | | // display: flex; |
| | | } |
| | | |
| | | .sidecolumn { |
| | | // width: 300px; |
| | | // min-height: 100vh; |
| | |
| | | } |
| | | |
| | | .leftvlue-jbxx { |
| | | margin-bottom: 50px; |
| | | font-size: 20px; |
| | | font-size: 24px; |
| | | height: 30px; |
| | | border-left: 3px solid #41a1be; |
| | | padding-left: 3px; |
| | | |
| | | span { |
| | | position: absolute; |
| | |
| | | span { |
| | | font-size: 24px; |
| | | } |
| | | } |
| | | |
| | | .editor { |
| | | line-height: normal !important; |
| | | height: 600px; |
| | | margin-bottom: 80px; |
| | | } |
| | | |
| | | .ql-snow .ql-tooltip[data-mode="link"]::before { |
| | | content: "请è¾å
¥é¾æ¥å°å:"; |
| | | } |
| | | |
| | | .ql-snow .ql-tooltip.ql-editing a.ql-action::after { |
| | | border-right: 0px; |
| | | content: "ä¿å"; |
| | | padding-right: 0px; |
| | | } |
| | | |
| | | .ql-snow .ql-tooltip[data-mode="video"]::before { |
| | | content: "请è¾å
¥è§é¢å°å:"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-size .ql-picker-label::before, |
| | | .ql-snow .ql-picker.ql-size .ql-picker-item::before { |
| | | content: "14px"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before, |
| | | .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before { |
| | | content: "10px"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before, |
| | | .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before { |
| | | content: "18px"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before, |
| | | .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before { |
| | | content: "32px"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item::before { |
| | | content: "ææ¬"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { |
| | | content: "æ é¢1"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { |
| | | content: "æ é¢2"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { |
| | | content: "æ é¢3"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { |
| | | content: "æ é¢4"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { |
| | | content: "æ é¢5"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before, |
| | | .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { |
| | | content: "æ é¢6"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-font .ql-picker-label::before, |
| | | .ql-snow .ql-picker.ql-font .ql-picker-item::before { |
| | | content: "æ ååä½"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before, |
| | | .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before { |
| | | content: "衬线åä½"; |
| | | } |
| | | |
| | | .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before, |
| | | .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before { |
| | | content: "ç宽åä½"; |
| | | } |
| | | </style> |