1. 业务场景分析
- A页面带一个数组,传到B页面
- B页面会操作此数据(增删改查等)
- B页面操作完会返回此数组,A页面拿到操作后的值,草图如下:
2. A页面操作
- componentDidMount()中添加如下代码:(装载完成,在render之后调用)
async componentDidMount() { // 自定义事件名 Taro.eventCenter.on('EVENT_SLEECT_SCHOOL', (res) => { // 此处用于取参 B页面传过来的 console.log(res) }) }
- componentWillUnmount():组件将要销毁时触发的函数
componentWillUnmount() { // 关闭事件绑定 Taro.eventCenter.off('EVENT_SLEECT_SCHOOL') }
3. B 页面操作
Taro.eventCenter.trigger('EVENT_SLEECT_SCHOOL', { // 返回父页面 result: this.state.arrLength }) // 导航跳转方式需要改 使用此方式 Taro.navigateBack({ delta: 1 }); // 原导航跳转方式 Dq.navigateTo({ url: "/pages/shopStore/apply-settled/add-school/index" });