CKEditor5 与 vue.js 和 laravel 的集成
2019-03-12
3641
我尝试将 ckeditor 上传到我的项目,但我尝试了 7 个小时,它却没有消失。我在 Google 上搜索,从 30 个包(npm)安装,我按照教程操作,然后慢慢放弃了。请帮忙,我需要为所有包含 id =“description”的视图全局配置所见即所得编辑器。
我有类似的东西: component CKeditor.vue
<template>
</template>
<script>
import ClassicEditor from '@ckeditor/ckeditor5-build-classic'
import VueCkeditor from 'vue-ckeditor5'
export default {
components: {
'vue-ckeditor': VueCkeditor.component
},
data(){
return {
value1: 'hello',
value2: 'world',
editors: {
classic: ClassicEditor
}
}
},
template:
`<vue-ckeditor type="classic" v-model="value1" :editors="editors"></vue-ckeditor>`
}
</script>
View create.blade.php:
<ckeditor type="classic" v-model="value1" class="form-control" rows="5" name="description" id="description" placeholder="Description" maxlength="3000"></ckeditor>
app.js:
import Vue from 'vue'
import axios from 'axios'
Vue.prototype.$http = axios
require('./bootstrap');
Vue.component('ckeditor', require('./components/CKeditor.vue').default);
window.Vue = require('vue');
window.onload = function () {
const app = new Vue({
el: '#app'
});
}
这些作品来自 https://github.com/igorxut/vue-ckeditor5
请帮我运行这个所见即所得编辑器。非常感谢... :*
1个回答
我将从头到尾向您介绍如何使用 laravel 和 vuejs 运行 ckeditor 5,只需按照以下步骤操作即可
-1 使用 npm 在 laravel 中安装 CKEditor
npm install --save @ckeditor/ckeditor5-vue @ckeditor/ckeditor5-build-classic
-2 在 app.js 文件中添加此代码
import CKEditor from '@ckeditor/ckeditor5-vue';
Vue.use( CKEditor );
-3 在 app.js 中为 ckeditor 创建一个组件
Vue.component('ck-editor', require('./components/ckeditor.vue').default);
-4 将此代码添加到您的 ckeditor.vue 文件中
<template>
<div>
<ckeditor :editor="editor" v-model="editorData" :config="editorConfig"></ckeditor>
<button v-on:click="emptyEditor()">Empty the editor</button>
<br><br>
<h2>Editor display html code </h2>
<br>
<div>{{editorData}}</div>
<h2>Editor display html Result </h2>
<br>
<button v-on:click="displayEditorResult()">display result </button>
<br><br>
<div id="resultingText"></div>
</div>
</template>
<script>
import ClassicEditor from '@ckeditor/ckeditor5-build-classic';
export default {
data() {
return {
editor: ClassicEditor,
editorData: 'ckeditor 5 for laravel and vuejs',
editorConfig: {
// The configuration of the editor.
},
};
},
mounted(){
console.log('Component mounted.')
},
methods: {
emptyEditor() {
this.editorData = '';
},
displayEditorResult(){
document.getElementById('resultingText').innerHTML = this.editorData;
}
}
}
</script>
-5 创建一个 blade 文件并添加此代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ckeditor 5 wyswyg</title>
<link rel="stylesheet" href="/css/app.css">
</head>
<body>
<div id="app">
<ck-editor></ck-editor>
</div>
<script src="/js/app.js"></script>
<script>
</script>
</body>
</html>
最后运行代码,它将显示 CKEditor 5
希望我的回答能对您有所帮助
abdelhak51
2020-07-07