微信小程序WXML使用substr方法截取字符串

开发中,使用substr去截取页面数据,但是:

  • 在WXML上,直接使用{ {data.substr(0, 10)}} 并没有任何作用。

解决方法:

创建.wxs文件,专门写对应的处理格式的方法。

WXS(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。
WXS 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。

可参考官方文档

具体创建语法:

  • 创建.wxs文件
var subStr = function (val, start, stop) {
  if (val) {
    return val.substring(start, stop)
  } else {
    return ''
  }
}

var subDate = function (val) {
  if (val) {
    return val.substring(0, 10)
  } else {
    return ''
  }
}

module.exports = {
  subStr: subStr,
  subDate: subDate
};

  • 引入及使用
    如在 ‘pages/index/index.wxml’:

{
    {tools.subDate(createTime)}}

注意:

1. wxs语法不支持substr() 方法
.wxs文件中,若使用substr() 方法截取,会报错,如下:
在这里插入图片描述
即:官方文档所说:

WXS 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致。

官方文档中wxs语法,具体支持的方法:
https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/06datatype.html
如:sting类型支持的方法有:

toString
valueOf
charAt
charCodeAt
concat
indexOf
lastIndexOf
localeCompare
match
replace
search
slice
split
substring
toLowerCase
toLocaleLowerCase
toUpperCase
toLocaleUpperCase
trim
以上方法的具体使用请参考 ES5 标准。

2. wxs语法不支持es6
微信小程序WXML使用substr方法截取字符串_第1张图片

你可能感兴趣的:(微信小程序)