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

QQ登录

只需一步,快速开始

查看: 4358|回复: 14

[处理中3] wex5 a.w如何调用另一个b.w中的方法

[复制链接]

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
发表于 2017-12-18 17:16:36 | 显示全部楼层 |阅读模式
需求是查询界面a.w中有一个新增按钮,点击新增生成新的tab显示新增页b.w,新增完毕后刷新查询页a.w使其查询刷新,应该怎么实现。
发表于 2017-12-18 17:26:16 | 显示全部楼层
a页面  shell.showPage 的方式打开b页面是吗??   
可以传参过去的!将a页面中  model对象直接传参过去!
http://docs.wex5.com/wex5-ui-question-list-2048/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
 楼主| 发表于 2017-12-19 07:08:31 | 显示全部楼层
liangyongfei 发表于 2017-12-18 17:26
a页面  shell.showPage 的方式打开b页面是吗??   
可以传参过去的!将a页面中  model对象直接传参过去!
...

跳转方式是window.parent.contabs.openTab(title,url)在iframe中打开的新页
回复 支持 反对

使用道具 举报

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
 楼主| 发表于 2017-12-19 07:25:46 | 显示全部楼层
liangyongfei 发表于 2017-12-18 17:26
a页面  shell.showPage 的方式打开b页面是吗??   
可以传参过去的!将a页面中  model对象直接传参过去!
...

showPage 是弹出新页面,不满足我要在tab中生成的效果,而且还提示cannot read property'data' of undefined.   this.params.data.method.xxx不是可以在新增页的js中任意方法调用?
回复 支持 反对

使用道具 举报

发表于 2017-12-19 10:50:50 | 显示全部楼层
jkdlxx 发表于 2017-12-19 07:25
showPage 是弹出新页面,不满足我要在tab中生成的效果,而且还提示cannot read property'data' of undefi ...

tabs组件吗??那他们就是在同一个页面中的! 直接获取data组件调用刷新就行了!

如果是windowContainer 的页面  ,那就父子页面的方式调用
http://docs.wex5.com/wex5-ui-question-list-2119

不同页面的.w还可以通过派发事件的方式相互调用,任何两个w页面都能相互调用
http://docs.wex5.com/wex5-ui-question-list-2034/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
 楼主| 发表于 2017-12-20 16:51:58 | 显示全部楼层
liangyongfei 发表于 2017-12-19 10:50
tabs组件吗??那他们就是在同一个页面中的! 直接获取data组件调用刷新就行了!

如果是windowContainer ...

页面的跳转用的是window.parent.contabs.openTab,并没有用wex5的几种跳转,那我如果能将a.w的this传到b.w就能用this这个对象调用到a.w中定义的方法?
回复 支持 反对

使用道具 举报

发表于 2017-12-20 17:21:07 | 显示全部楼层
jkdlxx 发表于 2017-12-20 16:51
页面的跳转用的是window.parent.contabs.openTab,并没有用wex5的几种跳转,那我如果能将a.w的this传到b. ...

变量名字一定要改一下!! this 就是表示model对象!  单页应用中 this对象传过去!其他页面也可以调用!
当然还可以使用派发事件来处理!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
 楼主| 发表于 2017-12-21 14:07:09 | 显示全部楼层
liangyongfei 发表于 2017-12-20 17:21
变量名字一定要改一下!! this 就是表示model对象!  单页应用中 this对象传过去!其他页面也可以调用! ...

即使我拿到父页面a.w的this,只要父页面中的方法中有this.comp等方法都是提示找不到该方法,调试查看只能调用到父页面a.w中定义的model.prototype.XX 方法,方法无法正常运行。
回复 支持 反对

使用道具 举报

17

主题

62

帖子

128

积分

初级会员

Rank: 2

积分
128
QQ
 楼主| 发表于 2017-12-21 14:10:21 | 显示全部楼层
liangyongfei 发表于 2017-12-20 17:21
变量名字一定要改一下!! this 就是表示model对象!  单页应用中 this对象传过去!其他页面也可以调用! ...

能不能帮我看看这个window.parent.contabs.openTab跳转,使用这个跳转后是拿不到model对象的,该如何才能拿到。除非定义在define外的方法才能调用到。
我现在是b.w中require("XXX/a"),再a.prototype.方法,方法能进入,但是this.comp、event.soure好像都拿不到不识别,是不是这种不属于单页模式,属性拿不到。
回复 支持 反对

使用道具 举报

发表于 2017-12-21 14:10:36 | 显示全部楼层
jkdlxx 发表于 2017-12-21 14:07
即使我拿到父页面a.w的this,只要父页面中的方法中有this.comp等方法都是提示找不到该方法,调试查看只能 ...

你是类似这样调用的吗??
http://docs.wex5.com/wex5-ui-question-list-2048/

这个本地测试没问题的!  你先把我这个例子放进去可以调用到吗?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-7 10:27 , Processed in 0.085264 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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