支付宝小程序如何在{{}}中使用函数方法
場(chǎng)景:例如我們?cè)谄匠i_(kāi)發(fā)中會(huì)遇到后端返回一些時(shí)間、日期、金額等需要我們進(jìn)行格式化處理的數(shù)據(jù),這時(shí)候我們就需要在計(jì)算屬性中寫方法到xml中進(jìn)行使用
首先支付寶小程序到目前為止是還沒(méi)有計(jì)算屬性和監(jiān)聽(tīng)方法的,那么我們要是想實(shí)現(xiàn)上面的方法都需要用到SJS和import-sjs了
支付寶提供了import-sjs標(biāo)簽?zāi)敲淳唧w如何使用
<import-sjs from="/utils/appUtil.sjs" name="appUtil" />其中from標(biāo)識(shí)路徑,name代表自定義名稱 這個(gè)名稱在后面使用的時(shí)候會(huì)用到,from這里需要注意的是一定要引入sjs
那么什么是sjs呢
SJS(safe/subset javascript)是小程序一套自定義腳本語(yǔ)言,可以在 AXML 中使用其構(gòu)建頁(yè)面結(jié)構(gòu)。
SJS 是 JavaScript 語(yǔ)言的子集,與 JavaScript 是不同的語(yǔ)言,其語(yǔ)法并不與 JavaScript 一致,請(qǐng)勿將其等同于 JavaScript。
注意:
- sjs 中只支持使用 import、export 管理模塊依賴。
- sjs 只能定義在 .sjs 文件中。然后在 axml 中使用 <import-sjs> 標(biāo)簽引入。
- sjs 可以調(diào)用其他 sjs 文件中定義的函數(shù)。
- sjs 是 JavaScript 語(yǔ)言的子集,請(qǐng)勿將其等同于 JavaScript。
- sjs 的運(yùn)行環(huán)境和其他 JavaScript 代碼是隔離的, sjs 中不能調(diào)用其他 JavaScript 文件中定義的函數(shù),也不能調(diào)用小程序提供的 API。
- sjs 函數(shù)不能作為組件事件回調(diào)。
- sjs 不依賴于基礎(chǔ)庫(kù)版本,可以在所有版本小程序中運(yùn)行。
sjs文件
const filterTime = (num) => {num = num.toString().split("."); // 分隔小數(shù)點(diǎn)var arr = num[0].split("").reverse(); // 轉(zhuǎn)換成字符數(shù)組并且倒序排列var res = [];for (var i = 0, len = arr.length; i < len; i++) {if (i % 3 === 0 && i !== 0) {res.push(","); // 添加分隔符}res.push(arr[i]);}res.reverse(); // 再次倒序成為正確的順序if (num[1]) { // 如果有小數(shù)的話添加小數(shù)部分res = res.join("").concat("." + num[1]);} else {res = res.join("");}return res; } export default {filterTime, }我這里封裝了一個(gè)對(duì)金額進(jìn)行千分位截取且保留兩位小數(shù)的方法,那么這里需要注意到export的時(shí)候一定要記得寫default 不然是無(wú)法引入的,那么接下來(lái)就看一下是如何在{{}}中使用的
axml
<view ><import-sjs from="/utils/appUtil.sjs" name="appUtil" /><view class="myQuat_logged"><view class="title">{{myQuotaData.title?myQuotaData.title:'休息休息'}}<view class="quota_explain" onTap="onShowTips"><image mode="scaleToFill" src="/static/images/home/quota_explain.png" /></view></view><view class="content"><view class="content_exter">{{myQuotaData.creditLimit ?appUtil.filterTime(myQuotaData.creditLimit ) :'200,000'}}</view></view><view class="subTitle"><view></view></view><view class="myquat_button"><button onTap="onShowTost" a:if="{{!buttonStatus}}">申請(qǐng)額度</button><button class="cancel-btn" a:else onTap="onPhone" open-type="getAuthorize" onGetAuthorize="onGetAuthorize" onError="onAuthError" scope='phoneNumber'>申請(qǐng)額度</button></view></view> </view>通過(guò)這些你就可以像在在其他語(yǔ)言開(kāi)發(fā)中一樣使用方法函數(shù)了
總結(jié)
以上是生活随笔為你收集整理的支付宝小程序如何在{{}}中使用函数方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于 DPDK 的 一些零散的杂言杂语的
- 下一篇: dw可以自动生成html,Dreamwe