Files
tekelanew_acs/acs/nladmin-ui/node_modules/.cache/vue-loader/d9b2ac424f189cc75e0f4912ec274bb0.json
2024-12-05 09:33:18 +08:00

1 line
3.2 KiB
JSON

{"remainingRequest":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\src\\views\\system\\build\\tinymce\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\src\\views\\system\\build\\tinymce\\index.vue","mtime":1732871026731},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1732872824662},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1732872825017},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1732872824662},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1732872825835}],"contextDependencies":[],"result":["//\n//\n//\n//\n\r\nimport loadTinymce from '../utils/loadTinymce'\r\nimport { plugins, toolbar } from './config'\r\nimport { debounce } from 'throttle-debounce'\r\n\r\nlet num = 1\r\n\r\nexport default {\r\n props: {\r\n id: {\r\n type: String,\r\n default: () => {\r\n num === 10000 && (num = 1)\r\n return `tinymce${+new Date()}${num++}`\r\n }\r\n },\r\n value: {\r\n default: ''\r\n }\r\n },\r\n data() {\r\n return {\r\n tinymceId: this.id\r\n }\r\n },\r\n mounted() {\r\n loadTinymce(tinymce => {\r\n // eslint-disable-next-line global-require\r\n require('./zh_CN')\r\n let conf = {\r\n selector: `#${this.tinymceId}`,\r\n language: 'zh_CN',\r\n menubar: 'file edit insert view format table',\r\n plugins,\r\n toolbar,\r\n height: 300,\r\n branding: false,\r\n object_resizing: false,\r\n end_container_on_empty_block: true,\r\n powerpaste_word_import: 'clean',\r\n code_dialog_height: 450,\r\n code_dialog_width: 1000,\r\n advlist_bullet_styles: 'square',\r\n advlist_number_styles: 'default',\r\n default_link_target: '_blank',\r\n link_title: false,\r\n nonbreaking_force_tab: true\r\n }\r\n conf = Object.assign(conf, this.$attrs)\r\n conf.init_instance_callback = editor => {\r\n if (this.value) editor.setContent(this.value)\r\n this.vModel(editor)\r\n }\r\n tinymce.init(conf)\r\n })\r\n },\r\n destroyed() {\r\n this.destroyTinymce()\r\n },\r\n methods: {\r\n vModel(editor) {\r\n // 控制连续写入时setContent的触发频率\r\n const debounceSetContent = debounce(250, editor.setContent)\r\n this.$watch('value', (val, prevVal) => {\r\n if (editor && val !== prevVal && val !== editor.getContent()) {\r\n if (typeof val !== 'string') val = val.toString()\r\n debounceSetContent.call(editor, val)\r\n }\r\n })\r\n\r\n editor.on('change keyup undo redo', () => {\r\n this.$emit('input', editor.getContent())\r\n })\r\n },\r\n destroyTinymce() {\r\n if (!window.tinymce) return\r\n const tinymce = window.tinymce.get(this.tinymceId)\r\n if (tinymce) {\r\n tinymce.destroy()\r\n }\r\n }\r\n }\r\n}\r\n",null]}