Vue 2 et 3 JS Composant pour l'éditeur moyen Emballage avec https://github.com/yabwe/medium-editor mais tous les plugins sont réécrits dans vue.js Toutes les configurations d'éditeur moyen sont prises en charge
Démo
yarn add vuejs-medium-editor
# Vue 3
yarn add vuejs-medium-editor@next
OU
npm install vuejs-medium-editor
# Vue 3
npm install vuejs-medium-editor@next
Ajouter à la composante globale du vue 2
import Vue from 'vue'
import MediumEditor from 'vuejs-medium-editor'
Vue . component ( 'medium-editor' , MediumEditor )Ou Vue 3
import { createApp } from 'vue'
import MediumEditor from 'vuejs-medium-editor'
import App from './App.vue'
const app = createApp ( App )
app . component ( 'medium-editor' , MediumEditor )
app . mount ( '#app' )N'oubliez pas d'inclure le fichier CSS dans votre projet pour Vue 2
import 'medium-editor/dist/css/medium-editor.css'
import 'vuejs-medium-editor/src/themes/default.css'
// for the code highlighting
import 'highlight.js/styles/github.css' Ou dans styles comme ci-dessous
<style lang = "css" >
@import "~medium-editor/dist/css/medium-editor.css" ;
@import "~vuejs-medium-editor/src/themes/default.css" ;
/*@import '~highlight.js/styles/github.css';*/
@import '~highlight.js/styles/github.css' ;
< / style >Pour Vue 3
import 'medium-editor/dist/css/medium-editor.css'
import 'vuejs-medium-editor/dist/themes/default.css'
// for the code highlighting
import 'highlight.js/styles/github.css' Ou dans styles comme ci-dessous
<style lang = "css" >
@import "medium-editor/dist/css/medium-editor.css" ;
@import "vuejs-medium-editor/dist/themes/default.css" ;
/*@import '~highlight.js/styles/github.css';*/
@import 'highlight.js/styles/github.css' ;
< / style > < medium-editor
v-model = " content "
: options = " options "
: onChange = " onChange "
v-on : uploaded = " uploadCallback "
/>
<script>
import Editor from 'vuejs-medium-editor'
export default {
data() {
return {
content: '',
options: {},
}
},
components: {
'medium-editor': Editor,
},
methods: {
onChange() {
console.log(this.content)
},
uploadCallback(url) {
console.log('uploaded url', url)
},
},
}
</script>Vous pouvez également personnaliser les boutons de la barre d'outils
options: {
toolbar : {
buttons : [
'bold' ,
'italic' ,
'underline' ,
'quote' ,
'h1' ,
'h2' ,
'h3' ,
'pre' ,
'unorderedlist' ,
]
}
}Options disponibles: Toutes les options sont disponibles ici, vous pouvez également remplacer les options comme dans Medium Editor;
options: {
buttons : [
'anchor' ,
{
name : 'pre' ,
action : 'append-pre' ,
aria : 'code highlight' ,
tagNames : [ 'pre' ] ,
contentDefault : '<b><\></b>' ,
contentFA : '<i class="fa fa-code fa-lg"></i>' ,
} ,
]
}À l'aide de l'option Image dans la barre d'outils, ajoutez un lien d'image, mettez en surbrillance pour modifier, puis sélectionnez l'icône de l'image
buttons: [
{
name : 'image' ,
action : 'image' ,
aria : 'insert image from url' ,
tagNames : [ 'img' ] ,
contentDefault : '<b>image</b>' ,
contentFA : '<i class="fa fa-picture-o"></i>' ,
} ,
]Aussi, option disponible: grâce à la demande d'Ergofriend Pull sur le dépôt d'origine
options: {
uploadUrl : "https://api.imgur.com/3/image" ,
uploadUrlHeader : { 'Authorization' : 'Client-ID a3tw6ve4wss3c' } ,
file_input_name : "image" ,
file_size : 1024 * 1024 * 10 ,
imgur : true ,
}pre dans la barre d'outils, voir Options ci-dessus) Vous devez inclure le fichier highligh.js CSS dans les styles
<style >
/*default css */
@import 'highlight.js/styles/default.css' ;
/* github style */
@import 'highlight.js/styles/github.css' ;
< / style >Vous pouvez obtenir plus de styles de thème ici
< medium-editor : prefill = " defaultValue " : read-only = " true " /> Créer un fichier de plugin vuejs-medium-editor.js à l'intérieur /plugins Dir
import Vue from 'vue'
import MediumEditor from 'vuejs-medium-editor'
Vue . component ( 'medium-editor' , MediumEditor )Importez un plugin dans nuxt.config.js avec le mode SSR désactivé
plugins: [ { src : '~/plugins/vuejs-medium-editor' , ssr : false } ]Inclure un fichier CSS pour Vue 2
css: [
'medium-editor/dist/css/medium-editor.css' ,
'vuejs-medium-editor/src/themes/default.css' ,
'highlight.js/styles/github.css' , //if using code highlight
]Pour Vue 3
css: [
'medium-editor/dist/css/medium-editor.css' ,
'vuejs-medium-editor/dist/themes/default.css' ,
'highlight.js/styles/github.css' , //if using code highlight
] Magak Emmanuel
Mit
Codage heureux, étoile avant la fourche ???