html52.com
我爱小程序-开发者交流社区

同一个页面出现2个实例,对象引用不同,但是方法引用相同???

问题模块
API和组件
公司名称教评网

MP帐号(邮箱)

894530465@qq.com

开发者微信号

genie2048

机型(如iPhone 6s plus)


操作系统(如iOS 9.3)


是否必现

出现时间

2017-11-15

操作路径(即如何操作可以复现该问题)

操作如下:

  1. 在首页(一个tab分页)登录后,打开另一个tab分页(此时,首页进入onHide)

  2. 然后使用relaunch()跳转到一个页面A中。(此时,发现首页没有被卸载)

  3. 从这个页面A中,再次调用relaunch()返回首页。(此时,又产生了一个新的首页实例)

问题描述(具体问题介绍)

更新了基础库1.6.4,结果出现了莫名的问题。

首先,在使用relaunch()方法后,第一个tab页对应的页面实例没有卸载(同时也是首页)


其次,当再次使用relaunch()方法返回第一个tab页时,产生了新的页面实例。

非常诡异的是,在1.6.4基础库下。2个新老实例的引用虽然不同,但是方法的引用却相同!

同样的操作,在1.6.0基础库下,2个新老实例的引用不同,方法应用也不同。

问题截图(客户端问题界面截图)

对比了2个首页的实例,发现基础库1.6.4的表现和之前的基础库不同,例如基础库1.6.0


我使用了一个单例,记录了每个首页的对象,然后进行比较,问题现象如下:

我使用了一个单例,记录了每个首页的对象,然后进行比较,问题现象如下:在基础库1.6.4中:

在基础库1.6.4中:

在基础库1.6.4中:代码片段截图

代码片段截图


我使用了一个单例,记录了每个首页的对象,然后进行比较,代码是这样的,在同一个页面的onload方法中:

我使用了一个单例,记录了每个首页的对象,然后进行比较,代码是这样的,在同一个页面的onload方法中:





网友回复

晨光熹微:

更正一下,经过提示。发现使用了自定义组件之后,这个问题会出现。

当页面的json文件中使用了usingComponents之后,就会出现这个问题:对象的实例不同,但是各自的方法引用却相同。

晨光熹微:

@林超

是在开发者工具上发现的。之后又使用一台ip4s的测试机发现也有问题,系统是Ios9.3.5

林超:

这里是在开发工具上选择不同的基础库来测试的么?



还是不同的设备上的

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付