起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3302|回复: 8

[结贴] 求教关闭页面时如何传参?

[复制链接]

8

主题

33

帖子

95

积分

初级会员

Rank: 2

积分
95
QQ
发表于 2016-8-15 20:01:17 | 显示全部楼层 |阅读模式
如题,我从页面A->shell.showpage打开页面B,传了一个id的参数,在页面B的modelParamsReceive里面接收,然后在页面B用showpage打开页面C,也传递了id参数。当页面C操作结束后,我点击按钮,用shell.closepage关闭页面C返回页面B,我需要刷新页面B中的data,但是当触发modelParamsReceive的时候,id已经为空,此时就会报错。请问当关闭页面C返回页面B的时候,如何将id传回来,才能正确刷新页面B的data?

65

主题

315

帖子

851

积分

高级会员

Rank: 4

积分
851
发表于 2016-8-16 09:05:28 | 显示全部楼层
页面传参方式在记账本案例中有讲
回复 支持 反对

使用道具 举报

发表于 2016-8-16 10:26:22 | 显示全部楼层
B 页面接收到这个参数以后,可以自己保存在一个变量中啊!C页面回来的时候直接使用这个变量过滤即可!

当然也可以传递一个方法到第三个页面:http://docs.wex5.com/wex5-ui-question-list-2048/
在点击关闭的时候!可以先调用这个方法!在第二个页面执行data刷新!然后再关闭!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

8

主题

33

帖子

95

积分

初级会员

Rank: 2

积分
95
QQ
 楼主| 发表于 2016-8-16 13:48:42 | 显示全部楼层
本帖最后由 sy8718 于 2016-8-16 13:50 编辑
liangyongfei 发表于 2016-8-16 10:26
B 页面接收到这个参数以后,可以自己保存在一个变量中啊!C页面回来的时候直接使用这个变量过滤即可!

当 ...

我在modelParamsReceive里面接收从A传过来的值并存在一个变量中的。如果我不再B页面中放置model.Onactive,我没有办法在关闭C时刷新B的data,但是如果我放置了onactive, 当关闭C时,modelParamsReceive会被执行,然后变量就刷新了。这样我就会失去变量。我知道从C页面,我可以使用showpage代替closepage,这样是可以传参过去的。但总觉得一个是关闭当前页面,一个是打开新页面,按常理会有性能损失吧
回复 支持 反对

使用道具 举报

发表于 2016-8-16 15:22:02 | 显示全部楼层
sy8718 发表于 2016-8-16 13:48
我在modelParamsReceive里面接收从A传过来的值并存在一个变量中的。如果我不再B页面中放置model.Onactive, ...

本地测试过!执行关于页面方法this.close() 回到上一个页面的时候只会触发onActive ,不会触发modelParamsReceive 事件的!3.5正式版!所以也不存在变量被覆盖的情况!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

8

主题

33

帖子

95

积分

初级会员

Rank: 2

积分
95
QQ
 楼主| 发表于 2016-8-17 08:00:03 | 显示全部楼层
liangyongfei 发表于 2016-8-16 15:22
本地测试过!执行关于页面方法this.close() 回到上一个页面的时候只会触发onActive ,不会触发modelParam ...

我直接用chrome developer tool, js debugger测试的,justep.shell.closepage()当存在onActive的时候会触发modelParamsReceive。3.5正式版。
回复 支持 反对

使用道具 举报

发表于 2016-8-18 09:26:49 | 显示全部楼层
sy8718 发表于 2016-8-17 08:00
我直接用chrome developer tool, js debugger测试的,justep.shell.closepage()当存在onActive的时候会触 ...

我使用的是仿淘宝案例测试的!在list页面的modelParamsReceive 中进行测试的!
进入list.w时会触发!  在detail页面关闭回到list是不会触发的!

如果你的还是会触发!就参考3楼的连接!在页面还没回到B页面之前就调用它的方法!刷新数据!这个时候那个变量值肯定还没变!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

8

主题

33

帖子

95

积分

初级会员

Rank: 2

积分
95
QQ
 楼主| 发表于 2016-8-18 19:07:05 | 显示全部楼层
liangyongfei 发表于 2016-8-18 09:26
我使用的是仿淘宝案例测试的!在list页面的modelParamsReceive 中进行测试的!
进入list.w时会触发!  在 ...

我看了list那个页面,list页面的model并没有绑定onActive事件。如果我的页面不绑定onActive, modelParamsReveive也不会触发的。但一旦绑定了onActive,当关闭时就会触发modelParamsReceive了
回复 支持 反对

使用道具 举报

8

主题

33

帖子

95

积分

初级会员

Rank: 2

积分
95
QQ
 楼主| 发表于 2016-8-18 19:37:18 | 显示全部楼层
liangyongfei 发表于 2016-8-18 09:26
我使用的是仿淘宝案例测试的!在list页面的modelParamsReceive 中进行测试的!
进入list.w时会触发!  在 ...

3楼那个方法有效,虽然感觉代码上有点冗余。。。请结贴,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 10:41 , Processed in 0.082722 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表