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
Table of contents 1. The writing order of a compl...
Table of contents 1. Basic Introduction to JavaSc...
Preface PIPE, translated as pipeline. Angular pip...
If a div sets background-color and background-ima...
This article mainly introduces the solution to th...
In MySQL database operations, we always hope to a...
Formation of the grid system In 1692, the newly c...
Table of contents Review of Vue2 responsive princ...
There are many reasons why an application is as s...
I won't go into details about how important b...
Download: http://dev.mysql.com/downloads/mysql/ U...
When using Docker in a production environment, da...
1. Introduction In the past, if you wanted to emp...
Table of contents Preface Fix infinite loop in fo...
introduce A chart is a graphical representation o...