ミニプログラムにより、製品属性の選択や仕様の選択が可能

ミニプログラムにより、製品属性の選択や仕様の選択が可能

この記事では、ミニプログラムで製品属性選択または仕様選択を実装するための具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

成果を達成する

1.wxml

<view wx:for="{{list}}" wx:key="index" wx:key="index" wx:for-index="childIndex" style="margin: 40px 0">
  <ビュー>{{アイテム名}}</ビュー>
 
 
  <view class="s" wx:for="{{item.option_value}}" wx:key="index" >
   <text class="{{indexArr[childIndex] == index ? 'active':''}}" bindtap="choice" data-fid="{{childIndex}}" data-id="{{index}}">
    {{item.name}}
   </テキスト>
  </ビュー>
</ビュー>

2.js

データ: {
 //データリスト: [
   {
    "商品オプションID": 1737,
    "オプションID": 1737,
    "name": "氷度",
    "オプション値": [
     {
      「商品オプション値ID」: 3606,
      "オプション値ID": 3606,
      "name": "通常の氷",
      "画像": "xxxxxx.png"
     },
     {
      「商品オプション値ID」: 3605,
      "オプション値ID": 3605,
      "名前": "シャオ・ビン",
      "画像": "xxxxxx.png"
     },
     {
      「商品オプション値ID」: 3604,
      "オプション値ID": 3604,
      "name": "ホットドリンク",
      "画像": "xxxxxx.png"
     }
    ]
   },
   {
    「商品オプションID」: 1738,
    "オプションID": 1738,
    "name": "糖分含有量",
    "オプション値": [
     {
      「商品オプション値ID」: 3608,
      "オプション値ID": 3608,
      "name": "普通の砂糖",
      "画像": "xxxxxx.png"
     },
     {
      "商品オプション値ID": 3607,
      "オプション値ID": 3607,
      "name": "砂糖控えめ",
      "画像": "xxxxxx.png"
     }
    ]
   },
   {
    "商品オプションID": 1737,
    "オプションID": 1737,
    "name": "氷度",
    "オプション値": [
     {
      「商品オプション値ID」: 3606,
      "オプション値ID": 3606,
      "name": "通常の氷",
      "画像": "xxxxxx.png"
     },
     {
      「商品オプション値ID」: 3605,
      "オプション値ID": 3605,
      "名前": "シャオ・ビン",
      "画像": "xxxxxx.png"
     },
     {
      「商品オプション値ID」: 3604,
      "オプション値ID": 3604,
      "name": "ホットドリンク",
      "画像": "xxxxxx.png"
     }
    ]
   }
  ]、
  編曲: [],
  インデックスArr: []
 },

選択(e) {
  定数 fid = e.currentTarget.dataset.fid;
   定数 id = e.currentTarget.dataset.id;
  定数 arr = this.data.arr,
     arr2 = this.data.indexArr;
    
   arr[fid] = this.data.list[fid].option_value[id].name;
  arr2[fid] = id;

  this.setData({
   アーー ...
   インデックスArr: arr2
  })
 },
 
 onLoad: 関数 (オプション) {
  const res = this.data.indexArr;
  this.data.list.forEach((e,i) => {
   0 を返します。
   this.setData({
    インデックスArr:res
   })
  });
 }

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

以下もご興味があるかもしれません:
  • WeChatアプレットが商品属性の連携選択を実現
  • WeChatミニプログラム製品詳細ページ仕様属性選択サンプルコード

<<:  WindowsでiTunesのバックアップパスを変更する方法

>>:  MySQL で乱数を生成し、文字列を連結する方法の例

推薦する

Centos8.2 クラウド サーバー環境に Tomcat8.5 をインストールするための詳細なチュートリアル

Tomcatをインストールする前に、まずJDK環境をインストールしてくださいLinux サーバー上で...

vmware14Pro で Ubuntu システム インターフェイスが小さすぎる問題の解決方法の詳細な説明

1. 動作環境vmware14proウブントゥ 16.04LTS 2. 問題の説明vmware14P...

Linux での MySQL 5.6.33 のインストールと設定のチュートリアル

このチュートリアルでは、LinuxでのMySQL 5.6.33のインストールと設定方法を参考までに紹...

ろうそくを溶かす(水滴)サンプルコードを実現する純粋な CSS

成果を達成する実装のアイデアフィルターのコントラストとぼかしを利用して溶ける効果を実現します。親要素...

grpc のリバース プロキシとして nginx を使用する場合の落とし穴の概要

背景ご存知のとおり、nginx は高性能な Web サーバーであり、負荷分散やリバース プロキシによ...

Docker Swarm を使用して分散クローラー クラスターを構築する例

クローラーの開発プロセス中に、クローラーを複数のサーバーに展開する必要がある状況に遭遇したことがある...

MySQL8インストーラーバージョングラフィックチュートリアル

インストール必要な書類は下部に記載されていますステップ1 mysql-installer-web-c...

Win10 に Linux ubuntu-18.04 デュアル システムをインストールする (インストール ガイド)

コンピューターに Linux Ubuntu システムをインストールしました。初めてインストールしまし...

レスポンシブフレームワークのテーブルヘッダーの自動改行問題に対する簡単な解決策

最近、Bootstrap を使って Web サイトを開発しています。表を処理していたところ、PC で...

MySQLの左結合と内部結合について簡単に説明します

序文最近、X 省のコールド チェーン トレーサビリティ システムの開発で忙しくしています。毎日午後 ...

Linuxの同時実行は簡単です。このようにするだけです

並行処理関数 i の `grep server /etc/hosts | awk '{pri...

Reactでファイルパスエイリアスを素早く設定する方法

React は、ユーザー インターフェイスを構築するための JavaScript ライブラリです。F...

Linux ファイル操作でよく使われるコマンドのまとめ

0. 新しい操作: mkdir abc #新しいフォルダを作成 touch abc.sh #新しいフ...

Dockerは異常なコンテナ操作を排除する

この初心者は、Docker を学び始めたばかりの頃にこのような問題に遭遇しました。記録しておきます。...

Javascript イベントキャプチャとバブリングメソッドの詳細な説明

目次1. イベント処理モデル1. イベントバブリング(1)3つのdiv要素にイベントをバインドする(...