+
80
-

微信小程序wxml如何判断数组是否包含某一元素?

微信小程序wxml如何判断数组是否包含某一元素?

网友回复

+
0
-

indexOf的js方法可以实现检测数组是否包含某个元素,但是微信小程序的模板内wxml语法不支持js的方法。

所以只能通过WXS方式实现。

WXS(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。 wxs可以说就是为了满足能在页面中使用js存在的。

使用方法

写好wxs文件 然后导出要使用的方法或变量

// .wxs文件
function indexOf(arr, value) {
  if (arr.indexOf(value) < 0) {
    return false;
  } else {
    return true;
  }
}
module.exports.indexOf = indexOf;

在待使用页面 使用引入

// 引入
<wxs src="../../utils/util.wxs" module="tools" />

在插值{undefined{}}中使用tools.名字(参数)

// 使用
<view>{{tools.indexOf([1, 2, 3, 6, 9], 6) ? '包含' : '不包含'}}</view>

特别注意:wxs中不支持ES6语法

+
0
-

或者直接写在wxml中

<wxs  module="tools">
function indexOf(arr, value) {
  if (arr.indexOf(value) < 0) {
    return false;
  } else {
    return true;
  }
}
module.exports.indexOf = indexOf;
</wxs>
<view>{{tools.indexOf([1, 2, 3, 6, 9], 6) ? '包含' : '不包含'}}</view>

我知道答案,我要回答