目次
1. 宝くじプロセス全体の分析:
2. 円形の宝くじホイール コンポーネントで行う必要があること
3. ページのプレビュー
4. 基本的な使用法
5.roundTurntable コンポーネントの属性の説明
http://sc.chinaz.com/jiaobendemo.aspx?downloadid= 12018113053246
ホームページ ウェブフロントエンド Vue.js vuejsはターンテーブルを作ることができますか?

vuejsはターンテーブルを作ることができますか?

Sep 21, 2021 pm 03:42 PM
vuejs

vuejsはターンテーブルを作ることができ、実装方法は、 1.抽選ボタンを作成する; 2.ターンテーブルが停止する位置を取得する; 3.背景とインタラクトする; 4.設定した場所に停止するアニメーション終了後のステップ 2; 5. 賞品獲得機能のロックを解除するためのプロンプトを設定します。

vuejsはターンテーブルを作ることができますか?

この記事の動作環境: Windows 7 システム、Vue バージョン 2.9.6、Dell G3 コンピューター。

vuejs でターンテーブルを作ることはできますか?

Vue で構成可能な円形宝くじターンテーブル コンポーネント

1. 宝くじプロセス全体の分析:

  1. ターンテーブルの中央にあるポインターをクリックしました (例: 抽選開始ボタン)、回転できるかどうかを判断します (特定のロジックは canBeRotated()--① 現在所有している抽選の数が 0 より大きいかどうか ② 現在回転しているか (ロックされているか) )) を決定し、合格した場合は次のステップに進みます。そうでない場合は、対応するプロンプトがポップアップ表示されます。
  2. ターンテーブルが停止して背景​​と対話する位置を取得します。ただし、これはデモンストレーションのみを目的としており、0 ~ 5 がローカルでランダムに選択されます。
  3. 背景との対話に成功して停止位置を取得したら、ターンテーブルをロックして描画数を減らします。
  4. 回転を開始し、アニメーション終了後にステップ 2 で設定した場所で停止するようにターンテーブル コンポーネントに指示します。
  5. ターンテーブルが回転し、手順3で設定した場所で停止し、勝利とロック解除を促します。

2. 円形の宝くじホイール コンポーネントで行う必要があること

  1. 各ホイールの背景色と外枠の色をカスタマイズできます。 (turntableStyleOptionプロパティ)
  2. ターンテーブルのサイズと位置。 (呼び出し時に、コンポーネントにクラスを追加します。コードでは turntable です)
  3. ターンテーブルの実行時に必要な回転数をカスタマイズします。 (rotateCircleプロパティ)
  4. 実行中のアニメーションの継続時間をカスタマイズできます。 (duringTime 属性)
  5. 親コンポーネントから渡された賞品情報(prizeData)を受け取り、各ターンテーブルの位置を表示します。 (円の中心を基準に回転する角度を計算する getRotateAngle()メソッド)
  6. 親コンポーネントから呼び出されてから回転を開始し、指定した位置で停止するメソッド(rotate )、アニメーションの終了後に停止したことを親コンポーネントに伝えます。
  7. 賞品の名前と写真はカスタマイズできます。

3. ページのプレビュー

vuejsはターンテーブルを作ることができますか?

4. 基本的な使用法

  1. 引用
import roundTurntable from './components/roundTurntable';
ログイン後にコピー
  1. 宣言
components: {
  roundTurntable
},
ログイン後にコピー
  1. Call
<round-turntable>
    <template>
      <p>{{ scope.item.prizeName }}</p>
      <p>
        <img  src="/static/imghw/default1.png" data-src="scope.item.prizeImg" class="lazy" alt="vuejsはターンテーブルを作ることができますか?" >
      </p>
    </template>
</round-turntable>
ログイン後にコピー
data() {
  return {
    // 转盘上的奖品数据
    prizeData: [
   {
     id: 1,
     prizeName: '2000元京东券',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/1.png',
   },
   {
     id: 2,
     prizeName: '300元京东券',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/7.png',
   },
   {
     id: 3,
     prizeName: '50个比特币',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/3.png',
   },
   {
     id: 4,
     prizeName: '50元话费券',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/4.png',
   },
   {
     id: 5,
     prizeName: '100元话费券',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/5.png',
   },
   {
     id: 6,
     prizeName: '100个比特币',
     prizeImg: 'http://demo.sc.chinaz.net/Files/DownLoad/webjs1/201803/jiaoben5789/images/6.png',
   }
  ],
  // 转动的圈数
  rotateCircle: 6,
  // 转动需要持续的时间(s)
  duringTime: 4.5,
  // 转盘样式的选项
  turntableStyleOption: {
    // 背景色
    prizeBgColors: ['#AE3EFF', '#4D3FFF', '#FC262C', '#3A8BFF', '#EE7602', '#FE339F'],
    // 转盘的外边框颜色
    borderColor: '#199301',
  },
 }
},
methods: {
  // 已经转动完转盘触发的函数
   endRotation() {
      // 提示中奖
      alert(`恭喜您获奖啦,您的奖品是:${this.prizeData[this.prizeIndex].prizeName}`);
   },
},
ログイン後にコピー
.turntable {
  position: absolute;
  left: calc(50% - 200px);
  top: calc(50% - 200px);
  width: 400px;
  height: 400px;
}
.turntable-name {
  /*background: pink;*/
  position: absolute;
  left: 10px;
  top: 20px;
  width: calc(100% - 20px);
  font-size: 26px;
  text-align: center;
  color: #fff;
}
  .turntable-img {
  position: absolute;
  /*要居中就要50% - 宽度 / 2*/
  left: calc(50% - 80px / 2);
  top: 60px;
  width: 80px;
  height: 80px;
  img {
    display: inline-block;
    width: 100%;
    height: 100%;
  }
}
ログイン後にコピー

5.roundTurntable コンポーネントの属性の説明

##パラメータ説明タイプデフォルト値refこのコンポーネントの DOM ノードを取得し、サブコンポーネントの回転開始アニメーション メソッドを呼び出すには、stringprizeDatarotateCircle6duringTime s4.5turntableStyleOption{ プライズ BgColors: ['#AE3E​​FF', '# 4D3FFF'、'#FC262C'、'#3A8BFF'、'#EE7602'、'#FE339F']、borderColor: '#199301' }class6.roundTurntable のイベントの説明コンポーネント
this.$refs[refName].rotate(index) ## を使用します。 #—
ホイールに表示される賞品データ array
回転する円の数 number
回転にかかる時間(単位は秒)数値
ターンテーブル スタイル オプション (背景色、外枠色) object
ターンテーブルの位置とサイズを定義するために使用されるスタイル string

イベント名endRotation##—##https:/ / github.com/LiaPig/vue-round-turntable使用される賞品画像とポインター画像は次からのものです:
説明 コールバックパラメータ
ターンテーブルの停止後にトリガーされるイベント コールバック #7. 完全なプロジェクト コード

http://sc.chinaz.com/jiaobendemo.aspx?downloadid= 12018113053246

以上がvuejsはターンテーブルを作ることができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Vue.js と Kotlin 言語を使用して Android アプリケーションを開発するためのヒント Vue.js と Kotlin 言語を使用して Android アプリケーションを開発するためのヒント Jul 31, 2023 pm 02:17 PM

Vue.js と Kotlin 言語を使用して Android アプリケーションを開発するためのヒント モバイル アプリケーションの人気とユーザー ニーズの継続的な成長により、Android アプリケーションの開発は開発者からますます注目を集めています。 Android アプリを開発する場合、適切なテクノロジー スタックを選択することが重要です。近年、Vue.js 言語と Kotlin 言語が Android アプリケーション開発の選択肢として徐々に人気になってきています。この記事では、Vue.js と Kotlin 言語を使用して Android アプリケーションを開発するためのテクニックをいくつか紹介し、対応するコード例を示します。 1. 最初に開発環境をセットアップする

Vue.js と Python を使用してデータ視覚化アプリケーションを開発するためのヒント Vue.js と Python を使用してデータ視覚化アプリケーションを開発するためのヒント Jul 31, 2023 pm 07:53 PM

Vue.js と Python を使用してデータ視覚化アプリケーションを開発するためのヒント はじめに: ビッグ データ時代の到来により、データ視覚化は重要なソリューションになりました。データ視覚化アプリケーションの開発では、Vue.js と Python を組み合わせることで、柔軟性と強力な機能を提供できます。この記事では、Vue.js と Python を使用してデータ視覚化アプリケーションを開発するためのヒントをいくつか紹介し、対応するコード例を添付します。 1. Vue.js の概要 Vue.js は軽量の JavaScript です。

Vue.js と Lua 言語の統合、ゲーム開発用のフロントエンド エンジン構築におけるベスト プラクティスと経験の共有 Vue.js と Lua 言語の統合、ゲーム開発用のフロントエンド エンジン構築におけるベスト プラクティスと経験の共有 Aug 01, 2023 pm 08:14 PM

Vue.js と Lua 言語の統合、ゲーム開発用のフロントエンド エンジンを構築するためのベスト プラクティスと経験の共有 はじめに: ゲーム開発の継続的な開発に伴い、ゲーム フロントエンド エンジンの選択は重要な決定となっています。これらの選択肢の中で、Vue.js フレームワークと Lua 言語が多くの開発者の注目を集めています。人気のフロントエンド フレームワークとして、Vue.js は豊富なエコシステムと便利な開発方法を備えていますが、Lua 言語は軽量で効率的なパフォーマンスのため、ゲーム開発で広く使用されています。この記事では、その方法について説明します。

Vue.js と Objective-C の統合、信頼性の高い Mac アプリを開発するためのヒントとアドバイス Vue.js と Objective-C の統合、信頼性の高い Mac アプリを開発するためのヒントとアドバイス Jul 30, 2023 pm 03:01 PM

Vue.js と Objective-C 言語の統合、信頼性の高い Mac アプリケーションを開発するためのヒントと提案 近年、フロントエンド開発における Vue.js の人気と Mac アプリケーション開発における Objective-C の安定性により、開発者はこの 2 つを組み合わせて、より信頼性が高く効率的な Mac アプリケーションを開発しようとしています。この記事では、開発者が Vue.js と Objective-C を正しく統合し、高品質の Mac アプリケーションを開発するのに役立ついくつかのヒントと提案を紹介します。 1つ

Vue を使用して QQ のようなチャット バブル効果を実装する方法 Vue を使用して QQ のようなチャット バブル効果を実装する方法 Sep 20, 2023 pm 02:27 PM

Vue を使用して QQ のようなチャット バブル効果を実装する方法 今日のソーシャル時代において、チャット機能はモバイル アプリケーションや Web アプリケーションの中核機能の 1 つとなっています。チャット インターフェイスで最も一般的な要素の 1 つはチャット バブルです。これにより、送信者のメッセージと受信者のメッセージを明確に区別でき、メッセージの読みやすさが効果的に向上します。この記事では、Vue を使用して QQ のようなチャット バブル効果を実装する方法を紹介し、具体的なコード例を示します。まず、チャット バブルを表す Vue コンポーネントを作成する必要があります。コンポーネントは 2 つの主要な部分で構成されます

PHP と Vue.js を使用してグラフにデータのフィルタリングと並べ替え機能を実装する方法 PHP と Vue.js を使用してグラフにデータのフィルタリングと並べ替え機能を実装する方法 Aug 27, 2023 am 11:51 AM

PHP と Vue.js を使用してグラフにデータのフィルタリングと並べ替え機能を実装する方法 Web 開発では、グラフはデータを表示する非常に一般的な方法です。 PHP と Vue.js を使用すると、グラフ上にデータのフィルタリングおよび並べ替え機能を簡単に実装でき、ユーザーがグラフ上のデータの表示をカスタマイズできるようになり、データの視覚化とユーザー エクスペリエンスが向上します。まず、グラフで使用するデータのセットを準備する必要があります。名前、年齢、学年の 3 つの列を含むデータ テーブルがあるとします。データは次のとおりです: 名前、年齢、学年 Zhang San 1890 Li

Vue.js と Perl 言語を使用して効率的な Web クローラーとデータ スクレイピング ツールを開発します。 Vue.js と Perl 言語を使用して効率的な Web クローラーとデータ スクレイピング ツールを開発します。 Jul 31, 2023 pm 06:43 PM

Vue.js と Perl 言語を使用して、効率的な Web クローラーとデータ スクレイピング ツールを開発します。近年、インターネットの急速な発展とデータの重要性の増大に伴い、Web クローラーとデータ スクレイピング ツールの需要も増加しています。この文脈では、Vue.js と Perl 言語を組み合わせて効率的な Web クローラーとデータ スクレイピング ツールを開発することは良い選択です。この記事では、Vue.js と Perl 言語を使用してこのようなツールを開発する方法を紹介し、対応するコード例を添付します。 1. Vue.js と Perl 言語の概要

Vue.js と Dart 言語の統合、クールなモバイル アプリケーション UI インターフェイスを構築するための実践的および開発スキル Vue.js と Dart 言語の統合、クールなモバイル アプリケーション UI インターフェイスを構築するための実践的および開発スキル Aug 02, 2023 pm 03:33 PM

Vue.js と Dart 言語の統合、クールなモバイル アプリケーション UI インターフェイスを構築するための実践と開発スキル はじめに: モバイル アプリケーション開発において、ユーザー インターフェイス (UI) の設計と実装は非常に重要な部分です。クールなモバイル アプリケーション インターフェイスを実現するために、Vue.js を Dart 言語と統合し、Vue.js の強力なデータ バインディング機能とコンポーネント化機能、および Dart 言語の豊富なモバイル アプリケーション開発ライブラリを使用して、素晴らしいモバイル アプリケーションを構築できます。 UIインターフェイス。この記事ではその方法を説明します

See all articles