wangEditor is a web rich text editor developed based on javascript and css. It is lightweight, simple, easy to use, open source and free. wangEditor documentation: https://www.wangeditor.com/ Rich text editor screenshot: <!--Rich text editor. http://www.wangeditor.com/ Example of use: <AppEditor v-model="content"></AppEditor> --> <template> <article ref="editor" class="AppEditor-root"></article> </template> <script> const E = require('wangeditor'); export default { name: 'AppEditor', model: { prop: 'value', event: 'update:value', }, props: { // value, v-model binding value: {type: String, default: ''}, //Menu optionsmenus: { type: Array, default(){ return [ : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : }, }, }, data(){ return { editor: {}, // Editor object_value: '', // Content backup, used for judgment during watch, only changes when the editor is input}; }, computed: {}, mounted(){ this.initEditor(); }, watch: value(newValue, oldValue){ // Editor onchange changes are not processed, only those from the parent component are processed to prevent text rollback bug if (newValue != this._value) { this.editor.txt.html(newValue); } }, }, methods: { initEditor(){ let editor = new E(this.$refs.editor); Object.assign(editor.customConfig, { menus: this.menus, zIndex: 100, height: 200, pasteFilterStyle: false, onchange: (html) => { this._value = html; // Update _value this.$emit('update:value', html); // Update value }, customUploadImg:((file, insert)=> { if(this.$utils.isEmpty(file)){ return; } const msg = this.$Message.loading({ content: 'Dear, the picture is being uploaded, please wait...', duration: 0 }); var params = new FormData(); params.append('img', file[0]); this.$api.post('/synthesis/crm/picture/pictureUpload',params).then(res => { insert(res.data.imgUrl) setTimeout(msg, 0); this.$Message.success('Upload successful'); }) }), uploadImgHooks:{ customInsert: function (insertImg, result, editor) { insertImg(result.url) } } }); editor.create(); editor.txt.html(this.value); // For asynchronous data acquisition, it cannot be bound immediately. Watch the judgment and process this.editor = editor; }, }, }; </script> <style scoped lang="scss"> .AppEditor-root{ border: 1px solid #f0f0f0; height: 400px !important; /deep/ .we-toolbar{ border: none !important; border-bottom: 1px solid #f0f0f0 !important; background-color: #fff !important; } /deep/ .we-text-container{ height: calc(100% - 43px) !important; border: none !important; z-index:1 !important; .we-text{ height: 100%; overflow-y: auto !important;} } } </style> This is the end of this article about the use of wangeditor rich text editing in Vue. For more relevant wangeditor rich text editing content, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope everyone will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: Some notes on mysql create routine permissions
>>: About MySQL innodb_autoinc_lock_mode
I would like to ask a question. In Dreamweaver, I...
REPLACE Syntax REPLACE(String,from_str,to_str) Th...
An error message appears when MySQL is started in...
Table of contents sequence 1. Centralized routing...
1. Inline reference: used directly on the label, ...
Services provided by NFS Mount: Enable the /usr/s...
Preface This article contains 1. Several major co...
Database read-write separation is an essential an...
Table of contents Preface Background data splicin...
I recently wanted to convert a website to https a...
Preface This article mainly introduces the releva...
background When working on the blockchain log mod...
1. Connect to MySQL Format: mysql -h host address...
1 Problem description: 1.1 When VMware is install...
I always thought that Docker had no IP address. I...