WeChatアプレットで計算機機能を実装する

WeChatアプレットで計算機機能を実装する

この記事は、WeChat アプレットを使用して作成された簡単な計算機です。興味のある方はご覧ください。

ページセクション

<ビュークラス='ボックス'>
     <view class='txt'>{{screenNum}}</view> 
    <view capture-bind:touchstart="compute">
     <表示>
       <button data-val='clear' class='boxtn btn1'>AC</button>
       <button data-val='back' class='boxtn btn1'>←</button>
       <button data-val='#' class='boxtn btn1'>#</button>
       <button data-val='/' class='boxtn btn'>/</button>
     </ビュー>
       <表示>
       <button data-val='7' class='boxtn'>7</button>
       <button data-val='8' class='boxtn'>8</button>
       <button data-val='9' class='boxtn'>9</button>
       <button data-val='*' class='boxtn btn'>*</button>
     </ビュー>
       <表示>
       <button data-val='4' class='boxtn'>4</button>
       <button data-val='5' class='boxtn'>5</button>
       <button data-val='6' class='boxtn'>6</button>
       <button data-val='-' class='boxtn btn'>-</button>
     </ビュー>
       <表示>
       <button data-val='1' class='boxtn'>1</button>
       <button data-val='2' class='boxtn'>2</button>
       <button data-val='3' class='boxtn'>3</button>
       <button data-val='+' class='boxtn btn'>+</button>
     </ビュー>
       <表示>
       <button data-val='1' class='boxtn btn2'>0</button>
       <button data-val='.' class='boxtn'>.</button>
       <button data-val='=' class='boxtn btn'>=</button>
     </ビュー>
    </ビュー>
</ビュー>

スタイルセクション

。箱{
  幅:100%;
  高さ: 700ピクセル;
  背景: #000;
}
。TXT{
  色: #fff;
  幅: 100%;
  高さ:120px;
  フォントサイズ: 50px;
  テキスト配置: 右;
}
.boxtn{
  幅: 90ピクセル;
  高さ:90px;
  表示:ブロック;
  フロート:左;
  境界線の半径: 50%;
  行の高さ: 90px;
  テキスト配置: 中央;
  左マージン: 3px;
  上マージン: 5px;
  色:#fff;
  背景: #333333;
  フォントの太さ: 太字;
  フォントサイズ: 25px;
}
.btn{
  背景: #f09a37;
}
.btn1{
  背景: #a5a5a5;
  色:#000;
}
.btn2{
  幅: 180ピクセル;
  境界線の半径: 40px;
}

js部分

//index.js
//アプリケーションインスタンスを取得する const app = getApp()

ページ({

  /**
   * ページの初期データ */
  データ: {
    screenNum: 0, //画面に表示される数値 currentNum: '', //現在の入力数値 storage: 0, //保存されている数値 operator: '', //演算子 off: false,
  },

  計算: 関数 (e) {
    var btn_num = e.target.dataset.val;
    var obj = this;
    if (!isNaN(btn_num)) {
      obj.data.off == trueの場合{
        obj.data.currentNum = ''
        obj.data.off = false;
      }
      obj.data.currentNum += btn_num
      obj.data.currentNum = 数値(obj.data.currentNum);
      obj.data.currentNum = obj.data.currentNum.toString();
    } それ以外 {
      スイッチ (btn_num) {
        ケース '+':
        場合 '-':
        場合 '*':
        場合 '/':
        '='の場合:
          // 画面上の現在の数値と演算子を変数に格納します。if (obj.data.storage == 0) {
            obj.data.storage = obj.data.currentNum;
            obj.data.operator = btn_num;
          } それ以外 {
            obj.data.off が true の場合 {
              (obj.data.operator == '+')の場合{
                obj.data.currentNum = 数値(obj.data.storage) + 数値(obj.data.currentNum)
              } そうでない場合 (obj.data.operator == '-') {
                obj.data.currentNum = 数値(obj.data.storage) - 数値(obj.data.currentNum)
              } そうでない場合 (obj.data.operator == '*') {
                obj.data.currentNum = 数値(obj.data.storage) * 数値(obj.data.currentNum)
              } そうでない場合 (obj.data.operator == '/') {
                obj.data.currentNum = 数値(obj.data.storage) / 数値(obj.data.currentNum)
              }
            }
            obj.data.storage = obj.data.currentNum;
            obj.data.operator = btn_num;
          }

          obj.data.off = true;
          壊す;
        ケース 'クリア':
          obj.data.storage = 0;
          obj.data.currentNum = '0';
          obj.data.operator = '';
          壊す;
        ケース「戻る」:
          obj.data.currentNum = obj.data.currentNum.slice(0, -1);
          obj.data.currentNum == ''の場合{
            obj.data.currentNum = '0';
          }
          壊す;
        場合 '。':
          if (obj.data.currentNum.indexOf('.') == -1) { // "." が含まれているかどうかを確認します
            obj.data.currentNum += btn_num
          }
          壊す;
      }
    }
    obj.setData({
      画面番号: obj.data.currentNum
    })
  },

})

効果図は以下のとおりです

WeChat 開発者ツールのダウンロードアドレス

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

以下もご興味があるかもしれません:
  • WeChatアプレットはシンプルな計算機を実装する
  • WeChatアプレットがシンプルな計算機機能を実装
  • WeChatアプレットが計算機機能を実装
  • WeChat アプレット計算機の例
  • WeChatアプレットが計算機機能を実装
  • WeChatアプレットがシンプルな計算機機能を実装
  • WeChatアプレットはシンプルな計算機を実装する
  • WeChat アプレットのシンプルな計算機の実装コード例
  • WeChat アプレット計算機の例

<<:  この SQL 書き込み方法では本当にインデックスが失敗するのでしょうか?

>>:  Tomcat 実行時の JVM エンコーディングの問題を修正

推薦する

LinuxベースのLVMシームレスディスク水平拡張の詳細な説明

環境名前財産CPU 5650 円メモリ4Gディスク20G+4TB この時点で、サーバーにはすでに次の...

CSS フレックスベースのテキストオーバーフロー問題の解決方法

重要でないflex-basisテキストオーバーフローに省略記号を追加するという小さな機能に多くの問題...

IDEA 構成の Tomcat 起動エラーの問題を解決する

異なるサーブレット パスを構成するときに、次の 2 つのエラーが発生しました。 java.lang....

docker-maven-plugin の詳細な使用方法

目次Docker-Maven-プラグインMavenプラグインの自動デプロイメント手順1. ホストマシ...

W3C チュートリアル (12): W3C SOAP アクティビティ

Web サービスは、アプリケーション間の通信に関係しています。SOAP は、Web サービス間の X...

Linux の非常に詳細な gcc アップグレード プロセス

目次序文1. 現在のgccバージョン2. gccをインストールする3.gmpのインストール4.MPF...

Dockerコマンドの学習を1つの記事にまとめる

目次導入ミラーリポジトリログイン引く押す検索ローカル画像管理画像rmiタグ建てる歴史保存負荷輸入コン...

CSS3 @mediaの基本的な使い方のまとめ

//文法: @media mediatype and | not | only (メディア機能) ...

我々は自らの力でIE6を絶滅に追い込んでいる

実際、IE6 が本当にいつ消滅するのか私たちは毎日疑問に思っていますが、2001 年のリリース以来、...

役に立つメタ設定方法(必読)

<meta name="viewport" content="...

DockerでPython環境をパッケージ化するプロセスの詳細な説明

docker パッケージング Python 環境の手順は次のとおりです。 1 pip listの下に...

JS の 3 つの主要な問題、非同期性とシングルスレッドについて簡単に説明します。

目次シングルスレッド非同期シングルスレッドしかし、開発中にネットワーク リクエストやスケジュールされ...

Windows プラットフォーム構成 5.7 バージョン + MySQL データベース サービス

ルートユーザーのパスワードを初期化するプロセスと、よくある2つの問題の解決策が含まれています。 1....

HTMLの基礎を徹底解説(第1部)

1. WEBを理解するWeb ページは主にテキスト、画像、ハイパーリンクなどの要素で構成されていま...

vue-element-adminフレームワークを使用して、バックエンドからメニュー機能を動的に取得します。

目次2. 詳しい説明2.1. asyncRoutesルーティングを追加する2.2. 新しいpermi...