{{ }} で関数を直接使用する WeChat アプレットの例

{{ }} で関数を直接使用する WeChat アプレットの例

序文

WeChat アプレット開発 (ネイティブ wxml、wxcss) で、{{ }} 内で直接メソッドを呼び出してデータを処理したいのですが、エラーが報告されます。たとえば、プロジェクトでパーセンテージを計算する場合、js の浮動小数点演算によって精度の問題が発生し、小数点以下の桁数が多すぎる可能性があります。そのため、テンプレート構文で値を適切に処理する必要があります。

1. 使用

<view>¥{{(money*0.03).toFixed(2)}} 手数料(利率 3%)</view>

エラーが報告され、直接使用することも、js 内のメソッドを呼び出すこともできません。

2. 解決策

js 内の関数は {{}} 内で呼び出すことができないので、どうすればよいでしょうか? WeChat は、WXML の {{}} で .wxs メソッドを呼び出すことができるミニプログラム用のスクリプト言語である WXS (WeiXin Script) という新しい概念を提案しました。

新しい.wxsファイルを作成します

// es4構文をサポート var filter = {
	numberToFixed: 関数(値){
		戻り値.toFixed(2)
	}
}
// 外部に公開されたプロパティをエクスポート module.exports = {
	固定数: filter.固定数
}

.wxml 形式のファイルをインポートします。

<!-- .wxs ファイル src を相対パスとしてインポートし、module は現在のモジュールの名前を指定します -->
<wxs モジュール="フィルター" src="./numberToFixed.wxs"></wxs>

{{}} の .wxs モジュールのメソッドを呼び出します。

<view>手数料¥{{filter.numberToFixed(money*0.03)}}(手数料率3%)</view>

要約する

Vue からミニプログラムまで、ページを作成するときに最も感じる点は、Vue が以前は computed を使用して実装できた一部の処理やメソッドを {{}} で直接呼び出すことができるようになったことです。これにより、特定のデータを処理するのに非常に便利になります。 WeChat は、js のメソッドをミニプログラムで直接使用できないという欠点を補うために WXS をリリースしました {{}}。一方、それぞれが独自の機能を実行するミニプログラムのパフォーマンスも向上します。

WeChatミニプログラムが{{ }}で直接関数を使用する方法についてはこれで終わりです。WeChatミニプログラムが{{ }}で関数を使用する方法の詳細については、123WORDPRESS.COMで以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も123WORDPRESS.COMを応援してください。

<<:  Nginx がリクエストを処理する際のマッチングルールの詳細な分析

>>:  MySQL 5.7.18 Green Edition のダウンロードとインストールのチュートリアル

推薦する

Windows Server のインストール後にワイヤレスとオーディオが機能しない問題を解決する

1. ワイヤレスPowerShell を実行し、次のコマンドを入力します。 install-wind...

Docker Compose マルチコンテナデプロイメントの実装

目次1. WordPressの導入1. 環境を整える(II) イメージを実行するDocker の作成...

vue の webpack -v エラー解決の概要

XiaobaiはVueについて学び、次にwebpackについて学び、そしてさまざまなものをインストー...

Javascript における非同期待機の詳細な理解

この記事では、async/await がすべての JavaScript 開発者にとって非同期プログラ...

基本構造、ドキュメント タイプ、ヘッダー、本文などの一般的な HTML 要素の概要。

1. 基本構造:コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBL...

ネイティブ JS を使用してタッチスライド監視イベントを実装する方法

序文今日はちょっとしたデモを書きました。左右にスワイプするロジックに関わる部分があります。当初はプラ...

InnoDBのインデックスページ構造、挿入バッファ、適応ハッシュインデックスについての簡単な説明

InnoDB インデックスの物理構造すべての InnoDB インデックスは Btree インデックス...

CSSがページのレンダリングをブロックするかどうかについての簡単な説明

おそらく誰もが js の実行によって DOM ツリーの解析とレンダリングがブロックされることを知って...

Windows Server 2012 でファイル サーバーを構築するための詳細な手順

ファイル サーバーは、企業内で最も一般的に使用されるサーバーの一つであり、主にファイル共有を提供する...

HTML 画像 img にハイパーリンクを追加した後の醜い青い境界線の問題を解決する

HTML画像にハイパーリンクを追加すると醜い青い枠線が表示される次のように:解決: CSS スタイル...

MySQL でタイムゾーンを表示および変更する方法

今日、プログラムが間違った時刻を挿入し、フィールドがデフォルト値 CURRENT_TIMESTAMP...

Vue+Element UIはドロップダウンメニューのカプセル化を実現します

この記事の例では、ドロップダウンメニューのカプセル化を実装するためのVue + Element UI...

Nginx ベースの HTTPS ウェブサイトを設定する手順

目次序文:暗号化アルゴリズム: 1. HTTPS の概要2. NginxはHTTPSウェブサイト設定...

React + Threejs + Swiper パノラマ効果を実現するための完全なコード

パノラマビュー効果を見てみましょう: 住所を表示スクリーンショット: 体験してみると、周囲の環境がぐ...

Linux(中心OS7)は、Java Webプロジェクトの実行環境を構築するためにJDK、Tomcat、MySQLをインストールします。

1. JDKをインストールする1. 古いバージョンまたはシステム独自のJDKをアンインストールする...