Vueは商品詳細ページの商品タブ機能を実装します

Vueは商品詳細ページの商品タブ機能を実装します

この記事の例では、商品詳細ページ機能を実現するためのVueの商品タブの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

ユーザーが商品をクリックして商品詳細ページに入ると、最初の小さな画像に対応する大き​​な画像がデフォルトで表示されます。その後、マウスを小さな画像の上に移動すると、大きな画像も変化します。効果は次のとおりです。

実装コード:

shopitem.vue のテンプレート (HTML) には、上部に大きな画像、下部に小さな画像があります。マウスを小さな画像の上に移動すると、getUrl イベントがトリガーされます (パラメーターは、小さな画像の show 属性とインデックスです)。

item.json ファイル (私のデータ ファイルでは、デフォルトでは最初の小さい画像の表示が true になっており、デフォルトの大きい画像では最初の画像が表示されます。大きい画像と小さい画像のパスは同じですが、CSS で制御される画像のサイズは異なります)。

shopitem.vue の <script> メソッド (fechData() は vue-resource を使用してバックグラウンド データ、つまりローカル json ファイルを要求します。ローカル json ファイルは static フォルダーに保存されます。)

vuex (状態管理) の store.js ファイル コードはデータの永続性を実現します。

//ストアは倉庫に相当します。1 つのコンポーネントがデータを使用して変更し、別のコンポーネントが前のコンポーネントによって変更されたデータを使用します。//このようにして、vuex は異なるコンポーネント (異なるページ) 間でのデータ共有を実現します。//vuex の紹介
'vue' から Vue をインポートします。
'vuex' から Vuex をインポートします。
 
Vue.js で Vuex をビルドします。
 
//Vuex を使用してデータの永続性を実装する/* 1.state は主に vuex でデータを保存するために使用されます*/
var 状態 = {
 番号:1,
 情報:[]
}
 
// 2. 変異には、主に状態のデータを変更するために使用されるメソッドが含まれています var mutations={
 カウント(){
  ++状態.数値;
 },
 // 値は書き込まれる必要があります状態
 storeItemInfo(状態、データ){
  state.info=データ;
// state.list.push(データ);
 }
}
 
 // 3. 計算プロパティと同様に、状態内のカウントデータが変更されると、ゲッター内のメソッドが送信され、新しい値を取得します var getters={
  計算されたカウント: (状態) => {
    状態.count*2を返します。
  }
}
 
// 3.vuex は Vuex.Store をインスタンス化します
定数ストア = 新しい Vuex.Store({
  状態、/* 略語 */
  突然変異、
  ゲッター
})
 
//4. ストアを公開する
デフォルトストアをエクスポートします。

これは、es6 関数、vuex、およびリクエスト データを使用してこの効果を実現するためのすべてのコードです。とにかく、私はようやく es6 関数の利点を理解しました。それが皆さんのお役に立てば幸いです。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vueは製品の複数選択機能を実装します
  • Vueはショッピングカート内のすべての商品の選択と逆選択を実現します
  • Vueは製品仕様選択機能を実装
  • Vue Mall の製品「フィルター」機能の実装コード
  • Vue+Nodeは、商品リストのページング、並べ替え、フィルタリングを実装し、ショッピングカート機能の追加について詳しく説明します。
  • Vue はショッピングカートの全選択、単一選択、および製品価格の表示を実装するコード例
  • Vueは製品仕様を選択する機能を実装します

<<:  Ubuntuがインターネットに接続できない場合の解決策

>>:  史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 1) (パート 35)

推薦する

MySQLストレージフィールドタイプのクエリ効率についての簡単な理解

検索パフォーマンスは最速から最遅まで次のとおりです (私が聞いたところによると)。 1 番目: ti...

Linux で docker-compose を使用したソフトウェア構成の詳細な説明

序文この記事では、docker-compose の構成をいくつか紹介します。これらを参考にして、独自...

Linuxで相対パスを表現する方法

たとえば、現在のパスが /var/log で、/usr ディレクトリに移動する場合は、次のコマンドを...

WeChatミニプログラムの基本チュートリアル:Echartの使用

序文まずは最終的な効果を見てみましょう。私が自分で作った小さなデモです。まずEChartsの公式サイ...

読み込み進捗バーのネイティブ JS 実装

この記事では、ネイティブ JS によって実装された動的読み込みプログレス バーの特殊効果を紹介します...

HTML テーブルタグチュートリアル (7): 背景色属性 BGCOLOR

テーブルの背景色は、BGCOLOR 属性を通じて設定できます。基本的な構文<テーブル BGCO...

HTML の title 属性を正しく使用するためのヒント

コンテンツを携帯電話、タブレット、支援技術のユーザーから非表示にし、キーボードのユーザーにのみ表示す...

Vue 学習 - VueRouter ルーティングの基礎

目次1. Vueルーター1. 説明2. 選択したルートのレンダリング: 3. 基本的な動作原理2. ...

MySQL で 1 つのテーブルのフィールドを使用して別のテーブルのフィールドを更新する方法

1. 1列を変更する 学生の更新、都市c s.city_name = c.name を設定します こ...

VMware 15 仮想マシンに Ubuntu 18.04 をインストールするグラフィック チュートリアル

ここ数年、私は自動化とコンピューターを行ったり来たりしてきました。最近は、機械学習に関連するプロジェ...

オブジェクトのプロパティを反復処理する際の TypeScript の問題

目次1. 問題2. 解決策1. オブジェクトをanyとして宣言する2. オブジェクトのインターフェー...

MySQL マルチインスタンス インストール ブート自動起動サービス設定プロセス

1.MySQLの複数インスタンスMySQL マルチインスタンスとは、1 台以上のマシン上で複数の M...

Vue でよく使われる高階関数と包括的な例

1. 配列のよく使われる高階関数配列があり、その配列に対して次の操作を実行したいとします。 100 ...

MySQL の nvl() 関数に似た ifnull() 関数についての簡単な説明

IFNULL(式1,式2) expr1 が NULL でない場合、IFNULL() は expr1 ...

MySQL 8.0.21 無料インストール版 設定方法 グラフィックチュートリアル

MySQLをインストールする6つの手順(インストールパッケージのみがインストール場所を選択できます)...