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 DMLステートメントの使用に関する詳細な説明

序文:前回の記事では、注意深い学生であれば発見できたかもしれない DDL ステートメントの使用法を中...

Reactドラッグフックを実装するための100行以上のコード

序文ソースコードは合計で 100 行強しかありません。これを読めば、react-dnd などの成熟し...

Reactの二次連携を実現する方法

この記事では、二次リンクを実現するためのReactの具体的なコードを参考までに共有します。具体的な内...

Mysql関数呼び出しの最適化の詳細な説明

目次関数呼び出しの最適化関数呼び出しの最適化MySQL 関数は、内部的に決定論的または非決定論的とし...

ReactRouterの実装

ReactRouterの実装ReactRouterはReactのコアコンポーネントです。主にReac...

Ubuntu 16.04 にソースコードから Mininet をインストールする

ミニネットMininet は軽量のソフトウェア定義ネットワークおよびテスト プラットフォームです。軽...

border-radius 値の設定に関する質問

問題記録今日はプログレスバーに似た小さなコンポーネントを完成させるつもりでした。プロトタイプは次のよ...

Vueはプライベートフィルターと基本的な使用法を定義します

プライベート フィルターとグローバル フィルターのメソッドと概念は同じですが、プライベート フィルタ...

WeChatアプレットは左にスワイプしてリスト項目を削除する効果を実現

この記事では、WeChatミニプログラムの具体的なコードを共有し、左にスワイプしてリスト項目を削除す...

React useMemo と useCallback の使用シナリオ

目次メモを使うコールバックの使用メモを使う親コンポーネントが再レンダリングされると、そのすべての要素...

純粋な CSS 実装 (スクリプトなし) HTML コマンド スタイルのツールチップ テキスト プロンプト効果

実行プロセスを分析します。マウスをノードに移動して、ノードにツールチップ実装を開くための識別子 (...

Vueは画像のズームとドラッグをサポートするリッチテキストエディタを統合しています

必要:ビジネス要件によると、写真をアップロードできる必要があり、アップロードされた写真はモバイル端末...

ReactはExcelファイルのインポートとエクスポートを実装します

目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...

Linuxブートサービスを起動する2つの方法

目次rc.local メソッドchkconfig メソッドrc.local メソッド1 まず自動的に...

Vueスロットの詳細な説明

1. 機能: 親コンポーネントが子コンポーネントの指定された位置に HTML 構造を挿入できるように...