Vue.js と Ueditor リッチ テキスト エディターを組み合わせて使用する方法
この記事では、Vue.js と Ueditor を組み合わせたプロジェクトのサンプル コードを主に紹介します。詳細なコードはここにまとめられています。興味のある方は、フロントエンド開発プロジェクトで学習することができます。ページにリッチ テキスト エディターを統合する必要が生じるのは避けられません。
少し前に、会社の Vue.js プロジェクトで UEditor リッチ テキスト エディターを使用する必要があったので、Baidu で検索しましたが、詳細な手順が見つからなかったので、忙しい一日を経て、ようやく自分で試してみることにしました。1. 一般的な考え方
1.1 モジュール性vue の大きな利点の 1 つは、ページとロジックを再利用できるモジュール性です。したがって、Ueditor を .vue テンプレート ファイルに再パッケージ化できます。他のコンポーネントは、このテンプレートを導入することでコードの再利用を実装します。
1.2 データ送信まず、親コンポーネントはエディターの長さ、幅、初期テキストを設定する必要があります。これらのデータは props を介して渡すことができます。エディターでのテキストの変更は、Vue カスタム イベントを通じて親コンポーネントに渡すことができます。
2. 具体的な実装手順
2.1 主要な JS および CSS ファイルを導入します以下のファイルをすべてプロジェクトにコピーします
まずはURL パラメータを設定します。このパスは、コピーしたばかりのファイルのディレクトリを指す必要があります。ここでは相対パスを使用するのが最善であることに注意してください。
var URL = window.UEDITOR_HOME_URL || '/static/ueditor/';
次に、デフォルトの幅と高さの設定があります
,initialFrameWidth:null // null表示宽度自动 ,initialFrameHeight:320
他の機能の設定は公式ドキュメントで確認できます
2.3 エディタテンプレートを作成します必要がありますUeditor をエディター テンプレートのコア JS ライブラリにインポートし、contentChange コールバック関数を追加すれば完了です。
インポート構文を使用してコア JS ライブラリを導入する理由は、ES6 モジュラー仕様により準拠しているためです。main.js に JS を導入することを提案している人をオンラインで見かけましたが、JS を導入するのが早すぎると、ページが表示されなくなる可能性があります。初めてゆっくりロードします。
<template> <p ref="editor"></p> </template> <script> /* eslint-disable */ import '../../../assets/js/ueditor/ueditor.config'; import '../../../assets/js/ueditor/ueditor.all'; import '../../../assets/js/ueditor/lang/zh-cn/zh-cn'; import { generateRandonInteger } from '../../../vuex/utils'; export default { data() { return { id: generateRandonInteger(100000) + 'ueditorId', }; }, props: { value: { type: String, default: null, }, config: { type: Object, default: {}, } }, watch: { value: function value(val, oldVal) { this.editor = UE.getEditor(this.id, this.config); if (val !== null) { this.editor.setContent(val); } }, }, mounted() { this.$nextTick(function f1() { // 保证 this.$el 已经插入文档 this.$refs.editor.id = this.id; this.editor = UE.getEditor(this.id, this.config); this.editor.ready(function f2() { this.editor.setContent(this.value); this.editor.addListener("contentChange", function () { const wordCount = this.editor.getContentLength(true); const content = this.editor.getContent(); const plainTxt = this.editor.getPlainTxt(); this.$emit('input', { wordCount: wordCount, content: content, plainTxt: plainTxt }); }.bind(this)); this.$emit('ready', this.editor); }.bind(this)); }); }, }; </script> <style> body{ background-color:#ff0000; } </style>
3. エディターの使用エディターテンプレートを使用する場合、props を介して構成と初期テキスト値を渡す必要があります。
<template xmlns:v-on="http://www.w3.org/1999/xhtml"> <p class="edit-area"> <ueditor v-bind:value=defaultMsg v-bind:config=config v-on:input="input" v-on:ready="ready"></ueditor> </p> </template> <script> import ueditor from './ueditor.vue'; export default { components: { ueditor, }, data() { return { defaultMsg: '初始文本', config: { initialFrameWidth: null, initialFrameHeight: 320, }, }; }, }; </script>
Ueditor に写真をアップロードさせる必要がある場合は、バックグラウンドでインターフェイスを設定する必要もあります。この部分はまだ勉強する時間がありません。数日以内に補います
上記がこの記事の全内容です。その他の関連コンテンツについては、こちらをご覧ください。 PHP 中国語 Web サイトにご注意ください。
関連する推奨事項:
キープアライブ データ キャッシュによる vue プロジェクトの最適化方法Vue コンポーネント オプションの小道具の使用の紹介Vue.js ユニバーサル アプリケーション フレームワーク - Nuxt.js の分析以上がVue.js と Ueditor リッチ テキスト エディターを組み合わせて使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Vue フレームワークを使用してフロントエンド プロジェクトを開発する場合、デプロイ時に複数の環境をデプロイすることになりますが、開発環境、テスト環境、オンライン環境で呼び出されるインターフェイス ドメイン名が異なることがよくあります。どうすれば区別できるでしょうか?それは環境変数とパターンを使用することです。

Ace は、JavaScript で書かれた埋め込み可能なコード エディターです。 Sublime、Vim、TextMate などのネイティブ エディターの機能とパフォーマンスに匹敵します。あらゆる Web ページや JavaScript アプリケーションに簡単に埋め込むことができます。 Ace は Cloud9 IDE のメイン エディタとして維持されており、Mozilla Skywriter (Bespin) プロジェクトの後継です。

コンポーネント化とモジュール化の違い: モジュール化はコード ロジックの観点から分割され、コードの階層化された開発が容易になり、各機能モジュールの機能の一貫性が保証されます。コンポーネント化は UI インターフェイスの観点から計画され、フロントエンドのコンポーネント化により UI コンポーネントの再利用が容易になります。

前書き: vue3 の開発では、reactive は応答性の高いデータを実装するメソッドを提供します。これは日常の開発で頻繁に使用される API です。この記事では、著者はその内部動作メカニズムを探ります。

Vue.js は、今日のフロントエンド開発において非常に人気のあるフレームワークとなっています。 Vue.js が進化し続けるにつれて、単体テストの重要性がますます高まっています。今日は、Vue.js 3 で単体テストを作成する方法を検討し、いくつかのベスト プラクティスと一般的な問題と解決策を提供します。

Vue.js では、開発者は、JSX 構文とテンプレート構文という 2 つの異なる構文を使用してユーザー インターフェイスを作成できます。どちらの構文にもそれぞれ長所と短所があるので、それらの違い、長所と短所について説明します。

Vue3 動的コンポーネントで例外を処理するにはどうすればよいですか?次の記事では、Vue3 の動的コンポーネントの例外処理方法について説明します。

実際の開発プロジェクトのプロセスでは、比較的大きなファイルをアップロードする必要がある場合がありますが、その場合はアップロードが比較的遅くなり、バックグラウンドでフロントエンドがファイルのスライスをアップロードする必要がある場合があります。これは非常に簡単です。たとえば、1Aギガバイトのファイル ストリームはいくつかの小さなファイル ストリームに分割され、インターフェイスはそれぞれの小さなファイル ストリームを配信するように要求されます。
