长页的introduce类型添加表格拖拽

master
yujialong 3 months ago
parent 62e0f0d46f
commit e6eb09556c
  1. 0
      public/styles/tinymce/icons/default/icons.min.js
  2. 0
      public/styles/tinymce/jquery.tinymce.min.js
  3. 0
      public/styles/tinymce/langs/README.md
  4. 0
      public/styles/tinymce/langs/zh_CN.js
  5. 0
      public/styles/tinymce/license.txt
  6. 0
      public/styles/tinymce/plugins/advlist/plugin.min.js
  7. 0
      public/styles/tinymce/plugins/anchor/plugin.min.js
  8. 0
      public/styles/tinymce/plugins/autolink/plugin.min.js
  9. 0
      public/styles/tinymce/plugins/autoresize/plugin.min.js
  10. 0
      public/styles/tinymce/plugins/autosave/plugin.min.js
  11. 0
      public/styles/tinymce/plugins/bbcode/plugin.min.js
  12. 0
      public/styles/tinymce/plugins/charmap/plugin.min.js
  13. 0
      public/styles/tinymce/plugins/code/plugin.min.js
  14. 0
      public/styles/tinymce/plugins/codesample/plugin.min.js
  15. 0
      public/styles/tinymce/plugins/colorpicker/plugin.min.js
  16. 0
      public/styles/tinymce/plugins/contextmenu/plugin.min.js
  17. 0
      public/styles/tinymce/plugins/directionality/plugin.min.js
  18. 0
      public/styles/tinymce/plugins/emoticons/js/emojiimages.js
  19. 0
      public/styles/tinymce/plugins/emoticons/js/emojiimages.min.js
  20. 0
      public/styles/tinymce/plugins/emoticons/js/emojis.js
  21. 0
      public/styles/tinymce/plugins/emoticons/js/emojis.min.js
  22. 0
      public/styles/tinymce/plugins/emoticons/plugin.min.js
  23. 0
      public/styles/tinymce/plugins/formatpainter/plugin.min.js
  24. 0
      public/styles/tinymce/plugins/fullpage/plugin.min.js
  25. 0
      public/styles/tinymce/plugins/fullscreen/plugin.min.js
  26. 0
      public/styles/tinymce/plugins/help/plugin.min.js
  27. 0
      public/styles/tinymce/plugins/hr/plugin.min.js
  28. 0
      public/styles/tinymce/plugins/image/plugin.min.js
  29. 0
      public/styles/tinymce/plugins/imagetools/plugin.min.js
  30. 0
      public/styles/tinymce/plugins/importcss/plugin.min.js
  31. 0
      public/styles/tinymce/plugins/insertdatetime/plugin.min.js
  32. 0
      public/styles/tinymce/plugins/legacyoutput/plugin.min.js
  33. 0
      public/styles/tinymce/plugins/link/plugin.min.js
  34. 0
      public/styles/tinymce/plugins/lists/plugin.min.js
  35. 0
      public/styles/tinymce/plugins/media/plugin.min.js
  36. 0
      public/styles/tinymce/plugins/nonbreaking/plugin.min.js
  37. 0
      public/styles/tinymce/plugins/noneditable/plugin.min.js
  38. 0
      public/styles/tinymce/plugins/pagebreak/plugin.min.js
  39. 0
      public/styles/tinymce/plugins/paste/plugin.min.js
  40. 0
      public/styles/tinymce/plugins/preview/plugin.min.js
  41. 0
      public/styles/tinymce/plugins/print/plugin.min.js
  42. 0
      public/styles/tinymce/plugins/quickbars/plugin.min.js
  43. 0
      public/styles/tinymce/plugins/save/plugin.min.js
  44. 0
      public/styles/tinymce/plugins/searchreplace/plugin.min.js
  45. 0
      public/styles/tinymce/plugins/spellchecker/plugin.min.js
  46. 0
      public/styles/tinymce/plugins/tabfocus/plugin.min.js
  47. 0
      public/styles/tinymce/plugins/table/plugin.min.js
  48. 0
      public/styles/tinymce/plugins/template/plugin.min.js
  49. 0
      public/styles/tinymce/plugins/textcolor/plugin.min.js
  50. 0
      public/styles/tinymce/plugins/textpattern/plugin.min.js
  51. 0
      public/styles/tinymce/plugins/toc/plugin.min.js
  52. 0
      public/styles/tinymce/plugins/visualblocks/plugin.min.js
  53. 0
      public/styles/tinymce/plugins/visualchars/plugin.min.js
  54. 0
      public/styles/tinymce/plugins/wordcount/plugin.min.js
  55. 0
      public/styles/tinymce/skins/content/dark/content.min.css
  56. 0
      public/styles/tinymce/skins/content/default/content.min.css
  57. 0
      public/styles/tinymce/skins/content/document/content.min.css
  58. 0
      public/styles/tinymce/skins/content/writer/content.min.css
  59. 0
      public/styles/tinymce/skins/ui/oxide-dark/content.inline.min.css
  60. 0
      public/styles/tinymce/skins/ui/oxide-dark/content.min.css
  61. 0
      public/styles/tinymce/skins/ui/oxide-dark/content.mobile.min.css
  62. 0
      public/styles/tinymce/skins/ui/oxide-dark/fonts/tinymce-mobile.woff
  63. 0
      public/styles/tinymce/skins/ui/oxide-dark/skin.min.css
  64. 0
      public/styles/tinymce/skins/ui/oxide-dark/skin.mobile.min.css
  65. 0
      public/styles/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css
  66. 0
      public/styles/tinymce/skins/ui/oxide/content.inline.min.css
  67. 0
      public/styles/tinymce/skins/ui/oxide/content.min.css
  68. 0
      public/styles/tinymce/skins/ui/oxide/content.mobile.min.css
  69. 0
      public/styles/tinymce/skins/ui/oxide/fonts/tinymce-mobile.woff
  70. 0
      public/styles/tinymce/skins/ui/oxide/skin.min.css
  71. 0
      public/styles/tinymce/skins/ui/oxide/skin.mobile.min.css
  72. 0
      public/styles/tinymce/skins/ui/oxide/skin.shadowdom.min.css
  73. 0
      public/styles/tinymce/themes/mobile/theme.min.js
  74. 0
      public/styles/tinymce/themes/silver/theme.min.js
  75. 0
      public/styles/tinymce/tinymce.d.ts
  76. 0
      public/styles/tinymce/tinymce.min.js
  77. 4
      src/components/editor.js
  78. 23
      src/components/modules/module.vue
  79. 4
      src/pages/article/add/editor.js
  80. 2
      src/pages/column/page/home.vue

@ -6,7 +6,7 @@ import store from '@/store'
export default { export default {
//skin:'oxide-dark', //skin:'oxide-dark',
language: 'zh_CN', language: 'zh_CN',
language_url: './static/components/tinymce/langs/zh_CN.js', language_url: './styles/tinymce/langs/zh_CN.js',
plugins: 'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount imagetools textpattern help emoticons autosave autoresize formatpainter paragraphspacing', plugins: 'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount imagetools textpattern help emoticons autosave autoresize formatpainter paragraphspacing',
toolbar: 'code undo redo restoredraft | cut copy pastetext | forecolor backcolor headings fontsize lineHeight bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify | \ toolbar: 'code undo redo restoredraft | cut copy pastetext | forecolor backcolor headings fontsize lineHeight bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify | \
styleselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat | \ styleselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat | \
@ -181,7 +181,7 @@ export default {
height: 650, //编辑器高度 height: 650, //编辑器高度
min_height: 400, min_height: 400,
content_css: [ //可设置编辑区内容展示的css,谨慎使用 content_css: [ //可设置编辑区内容展示的css,谨慎使用
'./static/css/editor.css', './styles/css/editor.css',
], ],
// content_style: Style, // content_style: Style,
fontsize_formats: '12px 14px 16px 18px 19px 22px 24px 36px 48px 56px 72px', fontsize_formats: '12px 14px 16px 18px 19px 22px 24px 36px 48px 56px 72px',

@ -6,7 +6,7 @@
<el-dialog title="模块管理" :visible.sync="visible" :width="dialogWidth" custom-class="module" <el-dialog title="模块管理" :visible.sync="visible" :width="dialogWidth" custom-class="module"
:close-on-click-modal="false" :before-close="close"> :close-on-click-modal="false" :before-close="close">
<template v-if="data.type === 'introduce'"> <template v-if="data.type === 'introduce'">
<el-table class="module-table" :data="data.list" header-align="center" row-key="id"> <el-table class="module-table" :data="data.list" ref="introduceTable" header-align="center" row-key="id">
<el-table-column type="index" width="60" label="序号" align="center"></el-table-column> <el-table-column type="index" width="60" label="序号" align="center"></el-table-column>
<el-table-column v-for="(item, i) in data.forms" :key="i" :prop="item.prop" :label="item.label" <el-table-column v-for="(item, i) in data.forms" :key="i" :prop="item.prop" :label="item.label"
@ -186,6 +186,7 @@ import Setting from '@/setting'
import Util from '@/libs/util' import Util from '@/libs/util'
import 'tinymce-paragraphspacing' import 'tinymce-paragraphspacing'
import editorConfig from '@/components/editor' import editorConfig from '@/components/editor'
import Sortable from 'sortablejs'
import Cropper from '@/components/img-upload/Cropper' import Cropper from '@/components/img-upload/Cropper'
import Axios from 'axios' import Axios from 'axios'
import { mapActions } from 'vuex' import { mapActions } from 'vuex'
@ -326,16 +327,32 @@ export default {
this.articleNums = nums this.articleNums = nums
} }
if (type === 'introduce') { if (type === 'introduce') {
list && list.map((n, i) => {
this.$set(n, 'id', i++)
})
forms.map(e => { forms.map(e => {
if (e.type === 'editor' && e.pureText && list) { if (e.type === 'editor' && e.pureText && list) {
list.map(n => { list.map((n, i) => {
console.log(444, n[e.prop])
const el = document.createElement('div') const el = document.createElement('div')
el.innerHTML = n[e.prop] el.innerHTML = n[e.prop]
n[e.pureProp] = el.innerText n[e.pureProp] = el.innerText
}) })
} }
}) })
this.$nextTick(() => {
const tbody = document.querySelector('.el-table__body tbody')
const that = this
//
this.$refs.introduceTable && Sortable.create(tbody, {
onUpdate ({ newIndex, oldIndex }) {
if (newIndex == oldIndex) return
const currentRow = that.data.list.splice(oldIndex, 1)[0]
that.data.list.splice(newIndex, 0, currentRow)
}
})
})
} }
form && form.site && this.siteChange(form.site) form && form.site && this.siteChange(form.site)
this.dialogWidth = dialogWidth || '1000px' this.dialogWidth = dialogWidth || '1000px'

@ -7,7 +7,7 @@ import { Loading } from 'element-ui'
export default { export default {
//skin:'oxide-dark', //skin:'oxide-dark',
language: 'zh_CN', language: 'zh_CN',
language_url: './static/components/tinymce/langs/zh_CN.js', language_url: './styles/tinymce/langs/zh_CN.js',
plugins: 'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount imagetools textpattern help emoticons autosave autoresize formatpainter', plugins: 'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template codesample table charmap hr pagebreak nonbreaking anchor insertdatetime advlist lists wordcount imagetools textpattern help emoticons autosave autoresize formatpainter',
toolbar: 'code undo redo restoredraft | cut copy pastetext | forecolor backcolor headings fontsize lineHeight bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify | \ toolbar: 'code undo redo restoredraft | cut copy pastetext | forecolor backcolor headings fontsize lineHeight bold italic underline strikethrough link anchor | alignleft aligncenter alignright alignjustify | \
styleselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat | \ styleselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat | \
@ -184,7 +184,7 @@ export default {
// min_height: 400, // min_height: 400,
max_height: 650, max_height: 650,
content_css: [ //可设置编辑区内容展示的css,谨慎使用 content_css: [ //可设置编辑区内容展示的css,谨慎使用
'./static/css/editor.css', './styles/css/editor.css',
], ],
// content_style: Style, // content_style: Style,
fontsize_formats: '12px 14px 16px 19px 24px 36px 48px 56px 72px', fontsize_formats: '12px 14px 16px 19px 24px 36px 48px 56px 72px',

@ -269,7 +269,7 @@ export default {
li { li {
display: inline-flex; display: inline-flex;
width: 686px; width: 584px;
padding: 34px; padding: 34px;
margin-bottom: 28px; margin-bottom: 28px;
background-color: #fff; background-color: #fff;

Loading…
Cancel
Save