最近、Vue3.0 を試してみたくてうずうずしていましたが、とてもいい感じです。そこで、Vue2.0 のこれらの問題をすぐに終わらせて、3.0 用のものをいくつか書きました。 次のチェック関数: 次の Dom 更新サイクルが終了した後に遅延コールバックを追加します。データを変更した後、更新された Dom を取得できます。 Vue.nextTick( [コールバック, コンテキスト] ) vm.$nextTick( [コールバック] ) // 使用法 2 // Promise として使用 (2.1.0 以降の新機能) Vue.nextTick() .then(関数() { // DOMが更新されました}) 例: コールバック: 遅延コールバック関数 拡張機能:
ミックスイン関数: ミックスインを登録し、登録後に作成されるすべての Vue インスタンスに影響します。プラグイン作成者は、ミックスインを使用してコンポーネントにカスタム動作を挿入できます。 // カスタム オプション 'myOption' のハンドラーを挿入します。 Vue.mixin({ 作成: 関数 () { var myOption = this.$options.myOption if (myOption) { コンソールログ(myOption) } } }) 新しいVue({ myOption: 'こんにちは!' }) // => "こんにちは!" 例: オブジェクト: VM 属性またはメソッド $強制更新関数: Vue インスタンスを強制的に再レンダリングします。 vm.$forceUpdate() 設定、削除関数: レスポンシブ データのプロパティを設定および削除し、ビューの更新をトリガーします。 // 使用法 1 Vue.set( ターゲット、キー、値 ) Vue.delete( ターゲット、キー ) // 使用法 2 vm.$set( ターゲット、キー、値 ) vm.$delete( ターゲット、キー ) 例: ターゲット: ターゲットオブジェクト フィルター関数: 一般的なテキスト書式設定と標準的なデータ マッピングに使用されます。 <!-- 二重中括弧内 --> {{ メッセージ | 大文字 }} <!-- `v-bind` 内 --> <div v-bind:id="rawId | formatId"></div> // フィルターを登録する: { 大文字にする: 関数 (値) { if (!value) が '' を返す 値 = value.toString() 戻り値.charAt(0).toUpperCase() + value.slice(1) } } // グローバル登録 Vue.filter('capitalize', function (value) { if (!value) が '' を返す 値 = value.toString() 戻り値.charAt(0).toUpperCase() + value.slice(1) }) 新しいVue({ // ... }) 例: フィルター関数は、常に式の値 (前の演算子チェーンの結果) を最初の引数として受け取ります。
指令関数: カスタムディレクティブを登録するために使用されます。 使用法: <!-- ページが読み込まれると、この要素がフォーカスを受け取ります --> <入力vフォーカス> // グローバルカスタムディレクティブ `v-focus` を登録します Vue.directive('focus', { // バインドされた要素が DOM に挿入されると... 挿入: 関数 (el) { // 要素にフォーカス el.focus() } }) // ローカルディレクティブを登録します。コンポーネントはディレクティブオプションも受け入れます。ディレクティブ: { 集中: // 挿入された命令の定義: function (el) { el.フォーカス() } } } 例: 挿入は登録命令の補間関数の 1 つにすぎません。完全な登録属性には次のものも含まれます。 Vue.directive('my-directive', { バインド: 関数 () {}, 挿入: 関数 () {}, 更新: 関数 () {}, コンポーネント更新: 関数 () {}, アンバインド: 関数 () {} }) その他の単純な共通プロパティとメソッド// コンソールログ(vm.$root); vm.$root //インスタンスオブジェクト vm.$el //ルート要素(実際のDOM要素) // コンソールログ(vm.$el); vm.$el.innerHTML //ルート要素(実際のDOM要素)のコンテンツを取得します // console.log(vm.$el.innerHTML); vm.$data //インスタンスの下のデータオブジェクト// console.log(vm.$data); vm.$options //インスタンスの下にアイテムをマウントします// console.log(vm.$options); vm.$props //コンポーネント間の通信用データ// console.log(vm.$props); vm.$parent // コンポーネントでは、親要素を参照します // console.log(vm.$parent); vm.$children // コンポーネント内で、子要素を参照します // console.log(vm.$children); vm.$attrs //親コンポーネントから渡されたすべての属性を取得するために使用されます // console.log(vm.$attrs); vm.$listeners //親コンポーネントから渡されたすべてのメソッドを取得するために使用されます // console.log(vm.$listeners); vm.$slots //コンポーネント内のスロット// console.log(vm.$slots); vm.$scopedSlots //スコープ付きスロットにアクセスするために使用されます // console.log(vm.$scopedSlots); vm.$refs //DOM 要素を見つけるために使用 (追跡には ref を使用) // console.log(vm.$refs); vm.$watch //データを監視するために使用されます(vue ファイルで使用された後は自動的に破棄されます) // コンソールログ(vm.$watch); vm.$emit //イベントをディスパッチするために使用されます(通常はデータ通信に使用されます) // コンソールログ(vm.$emit); vm.$on //イベントディスパッチを監視するために使用されます// console.log(vm.$on); vm.$once //イベントを一度だけリッスンします(その後はリッスンしません) // コンソールログ(vm.$once); //ライフサイクル beforeCreate() { } 作成された() { } マウント前() { } マウント() { } 更新前() { } 更新された() { } 破棄する前に() { } 破壊された() { } 要約するこの記事には主に、vue でよく使用されるいくつかの API が含まれています。さらに詳しく知りたい場合は、公式 Web サイトを参照してください。この記事が皆様のお役に立ち、実際のプロジェクト開発にうまく応用できることを願っています。 読みやすく理解しやすいように、この記事のコードはGithubにアップロードされています。 記事に誤りがありましたら、コメント欄でご指摘ください。役に立った場合は、いいねやフォローをお願いします。 以上がVueのよく使われるAPIと高度なAPIの詳しいまとめです。Vueのよく使われるAPIと高度なAPIについてさらに詳しく知りたい方は、123WORDPRESS.COMの関連記事もぜひご覧ください! 以下もご興味があるかもしれません:
|
<<: 正規表現に基づくあいまい文字列置換を実装するMySQLの方法の分析
>>: userdel コマンドを使用して Linux ユーザーを削除する方法の詳細なチュートリアル
MySQL Limit はセグメント内のデータベース データをクエリでき、主にページングで使用されま...
目次アイデアホスト構成confを変更する再起動テストスレーブ 1 の構成スレーブ2の構成マスターとス...
この記事では、参考までにvueキャンバスのタイムライン描画の具体的なコードを紹介します。具体的な内容...
HTMLはヘッドとボディの2つの部分で構成されています** ヘッド内のタグはヘッドタグです** タイ...
ここで nginx のリバース プロキシを試してみましょう。リバースプロキシ方式とは、インターネット...
Nginx を使用して Tomcat9 クラスターを構築し、Redis を使用してセッション共有を実...
mysql コマンドを入力します: mysql -u+(ユーザー名) -p+(パスワード) mysq...
元のコード: center.html : <!DOCTYPE html> <htm...
目次1. 問題の背景2. 仮想マシン ネットワーク カードの接続方法は何ですか? 2.1 NAT 2...
この記事では、例を挙げて MySQL のマルチテーブル クエリについて説明します。ご参考までに、詳細...
多くの場合、Linux システムに Web サービス アプリケーション (Tomcat、Apache...
序文Linux でショートカットを作成すると、アプリケーションをより速く開くことができます。ここで、...
MySQL には次のログがあります。エラーログ: -log-errクエリログ: -logスロークエリ...
この例で使用されているMySQLのバージョンはmysql-8.0.15-winx64です。 1. z...
Kubernetes チームは最近、最新バージョンの Docker でサポートされている機能を廃止...