收藏
回答

在wxml中使用WXS,报错但能运行?

在WXML中嵌入以下代码:

<wxs module="m1">

var dateString = function(e){

  return e.slice(5,7)

};

module.exports.dateString = dateString;

</wxs>

<text>{{m1.dateString(item.createDate)}}</text>

报错提示:TypeError: e.slice is not a function

虽然报错但也能运行,不知为何?

回答关注问题邀请回答
收藏

3 个回答

  • 有赞
    有赞
    2020-11-24

    wxs 是在 view 层的,报错不会导致业务逻辑(js 线程)跪掉,但是报错应该是会导致页面现实不对的吧。

    2020-11-24
    有用
    回复
  • 王斗
    王斗
    2020-11-07

    e确实不是数组,但换成subString()依然报错。

    2020-11-07
    有用
    回复 6
    • this
      this
      2020-11-07
      再把e强转成字符串试下,我之前也是遇到这个问题很奇怪,然后转成字符串就不报错了
      2020-11-07
      回复
    • 王斗
      王斗
      2020-11-07回复this
      用String()强制转换,结果是对的,但又报String不是一个函数。好像是说VXS里的语法和JAVASCRIPT不是一码事。但为何还能执行呢。
      2020-11-07
      回复
    • this
      this
      2020-11-07回复王斗
      我也不是很理解VXS的语法,但是我不是用String强转,而是用e+''这种方式
      2020-11-07
      回复
    • 王斗
      王斗
      发表于移动端
      2020-11-07回复this
      e+的方法咋写的?
      2020-11-07
      回复
    • this
      this
      2020-11-07
      就是(e+"").substring(0,4),就是加上一个空字符串
      2020-11-07
      1
      回复
    查看更多(1)
  • this
    this
    2020-11-07

    你这个时间应该不是数组吧

    2020-11-07
    有用
    回复
登录 后发表内容
问题标签