Steven_Ju
Steven_Ju
  • 发布:2020-03-10 14:43
  • 更新:2020-03-11 09:18
  • 阅读:504

【报Bug】定义的class,无法使用成员方法

分类:uni-app

详细问题描述

定义一个class,在组件中引入后;
new Tel(‘123-213-23’) 能够获得_telStr,_telArr 等成员变量;
但是获取 getTelDisplayStr() 等方法无法获取

在Chrome浏览器中是正常的;

[内容]

代码如下

class Tel {  
  constructor(telStr) {  
    this._telStr = telStr;  
    this._telArr = telStr.split("-");  

    // 区号  
    this._areaCode = this._telArr[0];  
    // 电话号  
    this._number = this._telArr[1];  
    if (this._telArr.length < 2) {  
      return;  
    }  
    // 分机号  
    this._ext = this._telArr[2];  
  }  

  getTelDisplayStr() {  
    return this._areaCode + this._number + " 分机号 " + this._ext;  
  }  

  // 分机号  
  getExt() {  
    if (this._ext) return this._ext;  

    return "";  
  }  
}  

// 猜测是不是ES6的原因,尝试过,并不是  
Tel.prototype.getTel = function() {  
  return this._areaCode + "" + this._number;  
};

重现步骤

[步骤]

定义上面的class;在组件中引入
引入的位置,并进行 new操作

在微信开发中的截图

同样的代码中浏览器中是正常的

[结果]

[期望]

[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]

使用HBuilderX

[IDE版本号]

[windows版本号]

win10

[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]

微信小程序

[运行端版本号]

[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]

[编译模式是老模板模式还是新的自定义组件模式?]

新的

App运行环境说明

[Android版本号]

[iOS版本号]

[手机型号]

[模拟器型号]

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]

联系方式

[QQ]

微信 ju401109445
邮箱 jushisi01@163.com

2020-03-10 14:43 负责人:无 分享
已邀请:
陌上华年

陌上华年

跑了一下。。并无问题。。。

DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

测试未复现问题,可以提供一份能运行的项目我们再验证一下

Steven_Ju

Steven_Ju (作者) - Hello

和我把js文件放的位置有关吗?

如果不是,过一段时间,我整理一下再发出来;

该问题目前已经被锁定, 无法添加新回复