ホームページ > 記事 > ウェブフロントエンド > Vue ドキュメント内のコンポーネントによって渡されるさまざまなタイプのフィルター関数の例
フロントエンド開発者として、私たちは多くの場合、Vue.js を使用してページを構築する必要があります。 Vue.js では、コンポーネントは非常に重要な部分です。コンポーネント間で値を渡すことは非常に一般的な要件であり、値を渡す方法は数多くあります。この記事では、Vue ドキュメントでのコンポーネント値の転送と、さまざまな種類のフィルター関数の使用に焦点を当てます。
Vue.js では、コンポーネント間で値を渡す方法がいくつかあります:
props を使用して、親コンポーネントから子コンポーネントにデータを渡します。 Emit を使用すると、子コンポーネントのデータを親コンポーネントに渡すことができます。この方法は、コンポーネント間の双方向通信によく使用されます。このメソッドは非常に便利で、props で渡す必要があるデータを定義し、サブコンポーネントの $emit メソッドを使用してイベントをトリガーするだけです。
provide & injectはVue.js2.2.0版で追加されたAPIです。 Provide を使用して渡す必要のあるデータを定義し、inject を使用してこのデータをコンポーネントに注入します。このメソッドは、レベル間でデータを渡すためによく使用されます。
Vue.js のコンポーネント ツリーは、深さ優先のトラバーサル プロセスです。 $parent を使用して親コンポーネントのインスタンスを取得し、$children を使用して子コンポーネントのインスタンスを取得します。この方法の欠点は、柔軟性が十分ではなく、props & Emit や Provide & Inject ほど便利ではないことです。
データをフィルターまたは変換する必要がある場合は、Vue.js のフィルター関数を使用できます。 Vue.js は、次のタイプのフィルター関数を提供します。
グローバル フィルター関数は、の Vue.filter() メソッドを通じて定義されます。一度定義すると、任意のコンポーネントで使用できます。グローバル フィルター関数の利点は、シンプルであり、一度定義した後は複数のコンポーネントで使用できることです。ただし、グローバル フィルター関数は複数回インスタンス化されるため、フィルターされたデータが大量にある場合はパフォーマンスの低下につながります。
ローカル フィルター関数はコンポーネントで定義されます。このコンポーネント内でのみ使用できます。このアプローチの利点は、コンポーネント内でインスタンス化する必要があるのは 1 回だけであるため、パフォーマンスが向上することです。欠点は、非常に制限があり、コンポーネント内でのみ使用できることです。
純粋関数フィルター関数とは、特定のパラメーターを入力し、外部状態の影響を受けない特定の結果を出力することを指します。この方法はより使いやすく、いくつかの副作用を回避できます。ただし、純粋関数フィルター関数は元のデータを変更できないことに注意してください。
例を通してフィルタ関数の使用法を見てみましょう。この例では、コンポーネントを定義し、このコンポーネントに配列を渡し、コンポーネント内のフィルター関数を使用して配列をフィルター処理します。
<template> <div> <ul> <li v-for="item in filteredData">{{ item }}</li> </ul> </div> </template> <script> export default { props: { data: { type: Array, default: () => [] } }, computed: { filteredData() { return this.data.filter(item => { return item % 2 === 0 }).map(item => { return item * 2 }) } } }; </script>
このコンポーネントは配列データを渡し、フィルター関数を通じて配列をフィルター処理します。計算された属性では、JavaScript のフィルターおよびマップ メソッドを使用して配列内の偶数をフィルターし、フィルターされたデータを 2 で乗算しました。最後に、フィルタリングされたデータを表示のためにコンポーネントに返します。
概要
Vue.js にはコンポーネント値の転送メソッドとフィルター関数が豊富に用意されており、ニーズに応じて開発方法を選択できます。利用にあたっては、パフォーマンス、柔軟性、コードの再利用性などを総合的に考慮して、最適な開発方法を決定する必要があります。
以上がVue ドキュメント内のコンポーネントによって渡されるさまざまなタイプのフィルター関数の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。