Vue.js 3 は、コンポーネント データの変更を監視する watch()
メソッドを提供する人気の JavaScript フレームワークです。
Vue.js 3 では、watch() メソッドを使用して、単一データ、複数データを監視し、新しい値と古い値を取得できます。以下は、watch() の基本的な使用法です。
import { watch, ref } from 'vue' export default { setup() { const count = ref(0) watch(count, (newVal, oldVal) => { console.log(`New: ${newVal}, Old: ${oldVal}`) }) return { count } } }
上記のコードでは、ref 型変数 count
を定義し、watch()
を使用します。 count
変数の変更。 count
変数の値が変更されると、watch()
コールバック関数が実行され、新しい値と古い値がパラメーターとして関数に渡されます。
単一の変数を監視することに加えて、watch()
は複数の変数の変化を監視し、古い値/新しい値を取得することもできます。
複数の変数の監視:
watch( [count1, count2], ([newCount1, newCount2], [oldCount1, oldCount2]) => { console.log( `New count1: ${newCount1}, Old count1: ${oldCount1}, New count2: ${newCount2}, Old count2: ${oldCount2}` ) } )
古い値と新しい値を取得する:
watch( [count1, count2], ([newCount1, newCount2], [oldCount1, oldCount2]) => { console.log(`New count1: ${newCount1}, Old count1: ${oldCount1}`) console.log(`New count2: ${newCount2}, Old count2: ${oldCount2}`) }, { deep: true } )
この例では、詳細な監視を有効にするオプション オブジェクトを渡します。このアプローチにより、watch() によって監視される変数のケースがより大きく、より複雑になる可能性があります。
watch()
メソッドは、Vue.js 3 で非常に重要な役割を果たします。 . 必要に応じて変更し、いくつかのタスクを実行します。
たとえば、フロントエンド開発ではユーザーの入力ボックスを監視する場面がよくありますが、ユーザーの入力内容が変化した場合、関連する内容をリアルタイムに更新して表示する必要があります。たとえば、入力ボックスの内容が空の場合、コンポーネントは非表示になり、入力ボックスの内容が空でない場合、コンポーネントは表示されます。
import { watch, ref } from 'vue' export default { setup() { const userInput = ref('') const showComponent = ref(false) watch(userInput, (newVal) => { if (newVal === '') { showComponent.value = false } else { showComponent.value = true } }) return { userInput, showComponent } } }
上記のコードでは、ユーザー入力ボックスの変更を監視し、ユーザー入力ボックスの値に応じてコンポーネントを表示/非表示にします。
watch()
このメソッドは、データを非同期的に取得したり、データが更新されたときにページを再レンダリングしたりするなど、より複雑な関数を実装することもできます。
Vue.js 3 では、watchEffect()
メソッドが導入されました。 watchEffect()
メソッドは watch()
メソッドと同様に動作しますが、古い値と新しい値へのアクセスは提供しません。データ変更時にコールバック関数を自動的に実行できます。
import { watchEffect, ref } from 'vue' export default { setup() { const count = ref(0) watchEffect(() => { console.log(`Count is: ${count.value}`) }) return { count } } }
上記のコードでは、count
変数を定義し、watchEffect
() メソッドを使用して変数の変更を監視します。 count
変数の値が変更されるたびに、watchEffect()
コールバック関数が実行されます。
以上がvue3でwatch()を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。