WeChatコンポーネントの形式で提供されます。コンポーネント内部ではasync/awaitが使用されるため、WeChat開発者ツールの「詳細=>ローカル設定」で「コンパイルを強化してnpmを使用する」にチェックを入れてください。ミニプログラムでのnpmの使用については、WeChatミニプログラム-npmサポートを参照してください。 まず効果図を見てみましょう:手順:ステップ1: 依存関係をインストールするか、githuaにアクセスしてソースコードをダウンロードし、distディレクトリの下にlottary-turntableディレクトリをコピーします。 npm i 宝くじターンテーブル wx ミニプログラム用 ステップ2: ページJSON構成 { "コンポーネントの使用": { "lottery-turntable":"lottery-turntable-for-wx-miniprogram/lottery_turntable/index" } } ステップ3: データを準備し、イベント処理を追加する(コンポーネント ページ JS を使用) 定数データ = [{ "id": "792085712309854208", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 1" }, { "id": "766410261029724160", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 2" }, { "id": "770719340921364480", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 3" }, { "id": "770946438416048128", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 4" }, { "id": "781950121802735616", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 5" }, { "id": "766411654436233216", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 6" }, { "id": "770716883860332544", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 7" }, { "id": "796879308510732288", "imgUrl": "../../images/icon.png", "title": "サンダー プラチナ メンバー マンスリー カード - 8" }]; ページ({ データ: { datas: datas, // データ PrizeId: '', // 優勝結果 ID は属性を通じてコンポーネントに渡されます config: { // ターンテーブル構成は属性を通じてコンポーネントに渡されます titleLength: 7 } }, /** * 回数不足のコールバック* @param e */ onNotEnoughHandle(e) { wx.showToast({ アイコン: 'なし'、 タイトル: e.detail }) }, /** *抽選コールバック*/ onLuckDrawHandle() { this.setData({ 賞品ID: this.data.datas[Math.floor(Math.random() * 10 % this.data.datas.length)].id }); }, /** * アニメーション回転完了コールバック */ onLuckDrawFinishHandle() { 定数データ = this.data.datas; constデータ = datas.find((item) => { item.id === this.data.prizeId を返します。 }); wx.showToast({ アイコン: 'なし'、 title: `${data.title} 優勝おめでとうございます` }) this.setData({ 賞品ID: '' }); } }) ステップ4: ページの使用状況 <宝くじターンテーブル データ="{{データ}}" 賞品ID="{{prizeId}}" カウント="{{5}}" config="{{config}}" bindLuckDraw="onLuckDrawHandle" bindNotEnough="onNotEnoughHandle" bindLuckDrawFinish="onLuckDrawFinishHandle" </宝くじターンテーブル> ステップ5: コンポーネント構成項目を変更し(以下はデフォルトの構成です)、config属性を通じてjsオブジェクトを渡します。 /** * イーズ: 値は以下の通りです* 'linear' アニメーションの速度は最初から最後まで同じです* 'ease' アニメーションは低速で始まり、その後加速し、終了前に低速になります* 'ease-in' アニメーションは低速で始まります* 'ease-in-out' アニメーションは低速で始まり、終了します* 'ease-out' アニメーションは低速で終了します* 'step-start' アニメーションは最初のフレームで終了状態にジャンプし、終了まで続きます* 'step-end' アニメーションは開始状態のままで、最後のフレームで終了状態にジャンプします*/ // 以下はデフォルトの設定です let config = { サイズ: { 幅: '572rpx', 高さ: '572rpx' }, // ターンテーブルの幅と高さbgColors: ['#FFC53F', '#FFED97'], // ターンテーブル間隔の背景色は、複数の色の交互表示をサポートしますfontSize: 10, // テキスト サイズfontColor: '#C31A34', // テキストの色titleMarginTop: 12, // 最も外側のテキストの余白titleLength: 6 // 最も外側のテキストの番号iconWidth: 29.5, // アイコンの幅iconHeight: 29.5, // アイコンの高さiconAndTextPadding: 4, // 最も内側のテキストとアイコンの間の余白duration: 8000, // ターンテーブルの回転アニメーションdurationrate: 1.5, // 継続時間 s / 円の数で取得border: 'border: 10rpx solid #FEFAE4;', // ターンテーブルの境界ease: 'ease-out' // ターンテーブル アニメーション}; 要約するWeChatミニプログラム抽選コンポーネントに関するこの記事はこれで終わりです。WeChatミニプログラム抽選コンポーネントの関連コンテンツについては、123WORDPRESS.COMで過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後も123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: JS配列インデックス検出におけるデータ型の問題の詳細な説明
目次物語の始まりvimをインストールし、hadoop-hive.envを編集します。不注意で回避しま...
/etc/my.confファイルで、[mysqld]の下に次の行を追加します: skip-grant...
Mysqlが2つのテーブルを関連付けると、次のエラーメッセージが生成されます:照合順序の不正な組み合...
目次原理ネットワーク環境の準備インストール前の準備NIS サーバー操作NIS クライアント操作原理N...
標準 CSS3 を使用して要素の影の効果を実現するには、2 つの手順があります。1 つ目は一般的なb...
1. リストシンボルを設定するlist-style-type: attribute; //リストの...
この記事では、マウスを動かしたときにセカンダリ メニュー バーを実装するために HTML+CSS を...
序文: MySQL では、マスター/スレーブ アーキテクチャが最も基本的かつ最も一般的に使用されるア...
目次1. 説明2. 関連する依存パッケージをダウンロードする3. 設定ファイル .eslintrc....
CSS の適用範囲はグローバルです。プロジェクトがどんどん大きくなり、参加する人が増えるにつれて、命...
目次序文1. batがjsを実行する2. ターミナルにバージョン番号を入力してパッケージ化コマンドを...
導入この記事では、django + uwsgi + nginx デプロイメントを使用して、Docke...
MySQL は、スウェーデンの会社 MySQL AB によって開発されたリレーショナル データベース...
序文metaはhtml言語のhead領域にある補助タグです。おそらく、これらのコードは不要だと思うで...
1. Navicatの紹介1. Navicat とは何ですか? Navicat は強力な MySQ...