一、父传子
As we know 如果我们想把数据传递给下一个页面 很简单
页面A: 跳转路由并发送数据
页面A
页面B: 接受来自页面A的数据
页面B
二、子传父
可是如果我们想返回父页面并且传回数据,这咋办???(黑人问号脸)
页面A: 红圈细节 resolve('ok')执行之后 页面B 的 then()方法才能执行,当然 result的值就是'ok',同理reject()方法也是一样
页面A
页面B: 因为我们知道从A页面获取的'action'参数不是一般的参数 而是一个promise方法 所以我们可以直接赋值之后使用acion()方法进行传参,当然我们的then()是为了页面A接收到数据或者报错之后的处理
页面B
成功打印
Actions speak louder then words
三、总结
看到到这里,其实细心的童鞋也能发现 这其实就是个函数回传 完全可以不用promise,直接
A: let action2=(msg)=>{console.log(dataFromB)}
this.navCtrl.push("AddAddressPage",{''action':action2});
B: this.action=this.navParams.get("action");
let sonData='Im son data';
this.action(sonData);
目的也是可以达成的
但是!
我们为了页面友好交互,也要考虑特殊情况,所以进行promise处理 以达到尽善尽美(pop)
over
作者:凌风大师兄
链接:https://www.jianshu.com/p/5368a649e6bb