小程序wxml中调用JS方法

wxml用wx:for做列表渲染,然后想加个序号,为了美观,还要补足2位数才好。
本来想直接用js的padStart方法,结果wxml不能直接用js,不过小程序给出了自己的解决方法,就是使用wxs

WXS(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。
参考:https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxs/

WXS虽然和Javascript很相似,但是还是不一样的,并没有js这么好用!!! 但也基本够用


util.wxs部分:

var padNum = function(num, fill) {

  var len = ('' + num).length
  if (fill > len) {
    var arr = [];
    var slen = fill - len + 1
    for (var i = 0; i < slen; i++) {
      arr[i] = ''
    }
    num = arr.join(0) + num
  }
  return num;
};

module.exports = {
  padNum: padNum
};

wxml部分:

<wxs src="../../utils/util.wxs" module="util" />
<view wx:for="{{videos}}" class="item {{video_current_id == item.id ? 'current' : ''}}">
{{util.padNum(index+1,2)}}-{{item.title}}
</view>

OK啦!

你可能感兴趣的:(小程序开发)