ホームページ > 記事 > ウェブフロントエンド > Vue を通じて 2 つの画像の交互を実現するにはどうすればよいですか?
Vue を使用して、写真内の 2 つの画像の交互を実現するにはどうすればよいですか?
Web 開発では、ページ上に複数の画像を表示する必要があることが多く、ページの動的な効果と魅力を高めるために、画像を交互に表示できることが望まれます。 Vue フレームワークでは、いくつかの簡単なコードを使用して、画像内の 2 つの画像を交互に配置できます。
まず、Vue インスタンスを作成し、Vue インスタンスのデータ内に 2 つのイメージ パスを定義します。
<div id="app"> <img :src="currentImage" alt="Image"> </div>
new Vue({ el: '#app', data: { image1: 'path/to/image1.jpg', image2: 'path/to/image2.jpg', currentImage: '', timer: null }, mounted() { this.startImageRotation(); }, methods: { startImageRotation() { // 初始化当前图片为第一张图片 this.currentImage = this.image1; // 设置定时器,每两秒切换一次图片 this.timer = setInterval(() => { this.toggleImage(); }, 2000); }, toggleImage() { // 判断当前显示的是哪张图片 if (this.currentImage === this.image1) { this.currentImage = this.image2; } else { this.currentImage = this.image1; } } }, beforeDestroy() { // 清除定时器,防止页面销毁后仍然执行定时器的代码 clearInterval(this.timer); } });
上記のコードでは、Vue インスタンスのデータに 2 つの画像パス、つまり image1
と image2
を定義しました。 Vue インスタンスの mounted
ライフサイクル フック関数では、startImageRotation
メソッドを呼び出して画像の切り替えを初期化し、toggleImage## で現在表示されている画像を決定します。 # メソッド、次に切り替えます。
setInterval 関数とタイマーを使用して、画像が 2 秒ごとに切り替わるように設定します。
beforeDestroy ライフサイクル フック関数で、タイマーをクリアして、ページが破棄された後もタイマー コードが実行されないようにして、ページの通常のアンロードを保証します。ページ。
以上がVue を通じて 2 つの画像の交互を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。