原生微信小程序 计算属性 wxs

WXS官方文档

WXS 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。
WXS 与 JavaScript 是不同的语言,有自己的语法,并和 JavaScript 一致。
WXS 的运行环境和其他 JavaScript 代码是隔离的,WXS 中不能调用其他 JavaScript 文件中定义的函数,也不能调用小程序提供的API。
由于运行环境的差异,在 iOS 设备上小程序内的 WXS 会比 JavaScript 代码快 2 ~ 20 倍。在 android 设备上二者运行效率无差异。

购物车示例

创建名字.wxs的文件在任意目录

wxs

// count.wxs
/**
 * 获取商品总价
 * @param arr 
 */
module.exports.getAllPrice = function(arr){
    return arr.reduce(function(a,b){
        return a+(b.price*b.num)
    },0)
};
/**
 * 获取商品数量
 * @param arr 
 */
module.exports.getAllNum = function(arr){
    return arr.reduce(function(a,b){
        return a+b.num
    },0)
};

使用

<!--pages/food/foodlist/foodlist.wxml-->
<wxs src="/utils/wxs/count.wxs" module="count" />
<view>
<text class="price">¥{{ count.getAllPrice(carList) }}</text>
<text class="num">{{ count.getAllNum(carList) }}</text>
</view>
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐