inleft
2022-07-14 e45377e8f94faf25a98b9e5a645055b5fade4818
src/components/group/MyPreviewModal.vue
@@ -1,11 +1,12 @@
<template>
   <div class="myModal">
      <a-modal v-model="visible" title="编辑预览" on-ok="handleOk" width="90%" :footer="null"
         :bodyStyle="{'overflow':'overlay','width': '100%','height': '100%'}">
      <a-modal v-model="visible" title="编辑预览" width="60%" :footer="null"
         :bodyStyle="{'overflow':'overlay','width': '100%','height': '700px'}">
         <div style="display: flex;">
            <a-textarea style="height: 750px;min-width: 50%" v-model="text" :rows="4" />
            <div class="markdown-body article-detail" style="min-width: 50%;">
               <vue-markdown  :source="text"></vue-markdown>
            <a-textarea id="myInput" style="height: 750px;min-width: 50%" v-model="text"
               @keydown.9.native.prevent="tabFunc" />
            <div class="markdown-body article-detail" style="min-width: 50%;border: 1px solid #d9d9d9;">
               <vue-markdown :source="text"></vue-markdown>
            </div>
         </div>
      </a-modal>
@@ -15,6 +16,7 @@
<script>
   import VueMarkdown from 'vue-markdown'
   import md5 from 'js-md5';
   export default {
@@ -24,20 +26,32 @@
      data() {
         return {
            visible: false,
            text: "### 长安古意   \r* 十里平湖霜满天 \r* 寸寸青丝愁华年 \r* 对月形单望相护 \r* 只羡鸳鸯不羡仙 ",
            text: "### &ensp;&ensp;十里平湖 \r> ##### (卢照邻)  \r> 化自《长安古意》 \r* 十里平湖霜满天 \r* 寸寸青丝愁华年 \r* 对月形单望相护 \r* 只羡鸳鸯不羡仙 \r![](http://blog.inleft.com/photo/example.jpg)",
         }
      },
      methods: {
         tabFunc() {
            this.insertInputTxt('myInput', '\t')
         },
         insertInputTxt(id, insertTxt) {
            var elInput = document.getElementById(id);
            var startPos = elInput.selectionStart
            var endPos = elInput.selectionEnd
            if (startPos === undefined || endPos === undefined) return
            var txt = elInput.value
            var result = txt.substring(0, startPos) + insertTxt + txt.substring(endPos)
            elInput.value = result
            elInput.focus()
            elInput.selectionStart = startPos + insertTxt.length
            elInput.selectionEnd = startPos + insertTxt.length
         },
         getCalendarContainer(trigger) {
            return this.$refs.myModal;
         },
         showModal() {
            this.visible = true;
         },
         handleOk(e) {
            console.log(111);
         },
         handleCancel(e) {
            this.visible = false;
         },