请问如何从其他页面如何触发首页的事件 例如 从列表选择一个选项,传参返回到首页并触发ajax
例如 fire函数 或者 eventlisten的监听有吗
页面逻辑是这样的 首页有一个按钮 点击进去有一个列表页 在列表页选择一个选项后 我想把这个选项的id传回去首页并用这个id去触发ajax;
首页是tabBar
网友回复:
onShow
onShow
这里注意几个问题:
1、首页是tabBar?如果是tabBar的话是不能带参跳转的;
2、假设不是tabBar,那么是点击返回返回吗?如果是返回键的话是不会带参返回的,而且page的onShow是不能接收参数的,只能在onLoad接收参数;
3、那这里的问题就是纯跳转,还是参数是重点?
可以在app.js设置一个全局变量A,列表选择的时候给这个A赋值,回到首页onShow里检查A的值,再进行相关逻辑处理;
但注意处理完以后要给A初始化,不然每次onShow都会调用处理,就是说应该是有一定条件才能进行相关处理。
以上仅是一个小建议,也可以通过缓存处理这个业务。主要是tabBar不能传参的问题
我来分析楼主的情形,在首页点击一个按钮,打开一个页面,选择某项东西,然后关闭该页,回到首页,首页想得到刚才选择的东西。
我的解决方案:
1、选择某项东西后,在全局App中记录该项
getApp().foo = bar
2、回到首页后,在onShow事件中获取刚才选择的
getApp().foo
onShow: function () { if (!app.selectedPoint){ return ; } if (app.pointType == '起点' ){ this .setData({ begin: app.selectedPoint }); } else { this .setData({ end: app.selectedPoint }); } this .afterSelect(); app.selectedPoint = null ; }, |
我已经这么用过,首先判断selectedPoint的值,如果有值,就执行逻辑,执行完,再把selectedPoint设置为null
谢谢两位