WeChatアプレット計算機の例、参考までに、具体的な内容は次のとおりです。 インデックス.wxml <view class="content"> <ビュークラス="num">{{num}}</ビュー> <view class="operotor">{{op}}</view> </ビュー> <view class="entry"> <表示> <view class="item" bindtap="resetBtn">c</view> <view class="item" bindtap="delBtn">削除</view> <view class="item" bindtap="opBtn" data-val="%">%</view> <view class="item" bindtap="opBtn" data-val="/">÷</view> </ビュー> <表示> <view class="item" bindtap="numBtn" data-val="7">7</view> <view class="item" bindtap="numBtn" data-val="8">8</view> <view class="item" bindtap="numBtn" data-val="9">9</view> <view class="item" bindtap="opBtn" data-val="*">x</view> </ビュー> <表示> <view class="item" bindtap="numBtn" data-val="4">4</view> <view class="item" bindtap="numBtn" data-val="5">5</view> <view class="item" bindtap="numBtn" data-val="6">6</view> <view class="item" bindtap="opBtn" data-val="-">-</view> </ビュー> <表示> <view class="item" bindtap="numBtn" data-val="1">1</view> <view class="item" bindtap="numBtn" data-val="2">2</view> <view class="item" bindtap="numBtn" data-val="3">3</view> <view class="item" bindtap="opBtn" data-val="+">+</view> </ビュー> <表示> <view class="item tow" bindtap="numBtn" data-val="0">0</view> <view class="item one" bindtap="dotBtn" data-val=".">.</view> <view class="item one" bindtap="opBtn" data-val="=">=</view> </ビュー> </ビュー> インデックス.css ページ { ディスプレイ: フレックス; flex-direction: 列; 高さ: 100%; } 。コンテンツ { フレックス: 1; 背景色: #f3f6fe; 位置: 相対的; } .コンテンツ .num { 位置: 絶対; フォントサイズ: 27pt; 下部:5vh; 右:3vw; } .コンテンツ .演算子 { フォントサイズ: 15pt; 位置: 絶対; 下部:1vh; 右:3vw; } .エントリ { フレックス: 1; フォントサイズ: 17pt; 上境界線: 1rpx 実線 #ccc; } .entry .item { フレックス: 1; パディング: 30rpx 0; テキスト配置: 中央; フレックスベース: 25%; 左境界線: 1rpx 実線 #ccc; 下部境界線: 1rpx 実線 #ccc; } .entry > ビュー { ディスプレイ: フレックス; } .entry > ビュー .tow { フレックス: 2; } .entry > ビュー .one { フレックス: 1; } インデックス ページ({ データ: { num: "", // 数値を格納 op: "" // 演算子を格納}, 結果: null、 isClear: false、 numBtn: 関数(e) { var num = e.target.dataset.val //console.log(num) はデータ値を取得します console.log(this.isClear) if (this.data.num === "0" || this.isClear) { this.setData({ 数値: 数値 }) this.isClear = false } それ以外 { this.setData({ num: this.data.num + num }) } }, opBtn: 関数(e) { var op = this.data.op var num = 数値(this.data.num) this.setData({ op: e.target.dataset.val }) if (this.isClear) { 戻る } this.isClear = true if (this.result === null) { this.result = 数値 戻る } (op === "+"の場合){ this.result = this.result + 数値 } そうでない場合 (op === "-") { this.result = this.result - 数値 } そうでない場合 (op === "*") { this.result = this.result * 数値 } そうでない場合 (op === "/") { this.result = this.result / 数値 } そうでない場合 (op === "%") { this.result = this.result % 数値 } this.setData({ num: this.result }) }, ドットボタン: 関数() { if (this.isClear) { this.setData({ 数値: "0." }) this.isClear = false 戻る } (this.data.num.indexOf(".") >= 0) の場合 { 戻る } this.setData({ num: this.data.num + "." }) }, delBtn: 関数() { var num = this.data.num.substr(0, this.data.num.length - 1) this.setData({ num: num === "" ? "0" : num }) }, リセットボタン: 関数() { this.result = null this.isClear = false this.setData({ 数値: "0", 操作: "" }) } }) 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: NginxはURLのパスに応じてアップストリームに動的に転送します
このチュートリアルでは、MySQL 5.7のインストールと設定方法を参考までに紹介します。具体的な内...
導入増分バックアップとは、完全バックアップまたは最後の増分バックアップの後、後続の各バックアップでは...
1. 計算属性とは何ですか? 簡単に言えば、計算された結果が属性に保存されるもので、キャッシュとして...
1. インライン要素はコンテンツの幅のみを占めますが、ブロック要素はコンテンツの量に関係なく行全体を...
始める前にクラウドサーバーを持っています。私のはTencent Cloud Server (Cent...
Vue 言語と要素コンポーネントを使用して、コード コンテンツの入力を必要とし、ハイライト表示が可能...
W3C は最近、「 XHTML Basic1.1 」と「 Mobile Web Best Prac...
Nginx を設定する 3 つの方法最初の方法は、位置一致部分を直接置き換える。 2 番目の pro...
MySQL 8.0.12 のインストールには 2 日かかり、さまざまな問題が発生しました。以下にまと...
目次1. sysbenchの紹介#プロジェクトダウンロードアドレス: 2. Sysbenchのインス...
目次Kubernetesについて基本的な環境の準備VirtualBoxをインストールするUbuntu...
1. Docker環境を準備する2. fastdfsイメージを検索する 3. イメージをプルするdo...
目次序文現地調査ケースの再現要約する序文最近、友人が突然WeChatで連絡してきて、MySQLでデー...
1. CSS変数がもたらす質的変化CSS 変数によってもたらされる改善は、CSS コードの節約や C...
導入分散システムでは、分散ロックは最も基本的なツール クラスです。たとえば、支払い機能を備えた 2 ...