用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,登录网站

小程序社区 首页 教程 查看内容

微信小程序 使用wxs计算获取到的数据

Rolan 2018-4-12 00:33

对于已经获取的数据往往还需要一点点小的计算,比如说两个数相除只取两位小数。wxs常用于数据处理。WXS 代码可以编写在 wxml 文件中的 标签内,或以 .wxs 为后缀名的文件内。情况一 在使用的wxml中写适用于只在此文 ...

对于已经获取的数据往往还需要一点点小的计算,比如说两个数相除只取两位小数。 
wxs常用于数据处理。 
WXS 代码可以编写在 wxml 文件中的 标签内,或以 .wxs 为后缀名的文件内。

情况一 在使用的wxml中写

适用于只在此文件中使用的模块定义

step 1

定义这个模块 写好事件处理函数 并且暴露出去

  1. <wxs module="m1">
  2. var getEvery = function(totle,each) {
  3. var eachPrice=(totle/each).toFixed(2);
  4. return eachPrice;
  5. }
  6. module.exports.getEvery = getEvery;
  7. </wxs>

此代码写在了wxml文件中 
每一个 .wxs 文件和 标签都是一个单独的模块。 
每个模块都有自己独立的作用域。 
即在一个模块里面定义的变量与函数,默认为私有的,对其他模块不可见。 
一个模块要想对外暴露其内部的私有变量与函数,只能通过 module.exports 实现。

step 2

用在wxml中:模块名.方法名(参数一 ,参数二);参数为 page.js 里面的 array

  1. <text wx:if="{{goods.childNum>1?'true':''}}">折算后单个: ¥{{m1.getEvery(goods.retailPriceJia,goods.childNum)}} </text>

即可。

情况二 在引用文件外边定义

wxs 不依赖于运行时的基础库版本,可以在所有版本的小程序中运行。所以不需要在意版本

step 1 .wxs 文件

在微信开发者工具里面,右键可以直接创建 .wxs 文件,在其中直接编写 WXS 脚本。

step 2 单文件定义

可以暴露变量名和函数,可以暴露一个,也可以暴露多个

  1. var filters = {
  2. toFix: function (value) {
  3. return value.toFixed(2)//此处2为保留两位小数
  4. }
  5. }
  6. var filt = {
  7. toFix: function (value) {
  8. return value.toFixed(1)//此处1为保留1位小数
  9. }
  10. }
  11. module.exports = {
  12. toFix: filters.toFix,
  13. toFixs: filt.toFix
  14. }

该 .wxs 文件可以被其他的 .wxs 文件 或 WXML 中的 标签引用。

step 3 在其他页面使用

  1. <wxs module="filt" src="../components/getfixed.wxs"></wxs>
  2. <text class='items-price-now'>¥{{filt.toFixs(item.retailPriceJia)}}</text><text style='color:#989898;font-size:22rpx;'>/个</text><text class='items-price-old'>市场价:¥{{filt.toFixs(item.retailPrice)}}</text>

至此,完成。 
保留两位小数效果实现.

鲜花
鲜花
鸡蛋
鸡蛋
分享至 : QQ空间
收藏
原作者: 王月_92f2 来自: 简书

相关阅读

极乐科技招聘高级前端工程师