react-keeper icon indicating copy to clipboard operation
react-keeper copied to clipboard

Control.go 跳转新的路由地址A->B,如何携带参数,B页面如何接收参数

Open remberi opened this issue 7 years ago • 7 comments

最近在移动项目中需要使用缓存上一个页面的状态,但是跳转的时候,需要将A页面的信息发送到B页面,react-keeper是怎么实现的

remberi avatar Oct 08 '18 06:10 remberi

有两种方式,一种是跳转B页面的时候,携带state,LinkControl.go都已经有支持实现;另一种,用redux这样的框架保存状态。

lanistor avatar Oct 09 '18 10:10 lanistor

Control.history.push({ pathname: "StaffSuggestionDetail" , state: rowData.msgId}); 你好,通过这种方式向下一个页面传参,如何接受这个参数呢,一直接受不到.急急急!

qijizhuimeng avatar Dec 28 '18 09:12 qijizhuimeng

Control.history.push({ pathname: "StaffSuggestionDetail" , state: rowData.msgId}); 你好,通过这种方式向下一个页面传参,如何接受这个参数呢,一直接受不到.急急急!

qijizhuimeng avatar Dec 28 '18 09:12 qijizhuimeng

@qijizhuimeng 目前可以使用Control.state读取,但是前提是已经跳转到下一个页面了(可以使用Control.history.go(1)跳转到下一个页面)。不过这样做的目的是什么?为什么不用Control.go(path, state)?

lanistor avatar Dec 29 '18 10:12 lanistor

是的,谢谢已经能够获取到state.

qijizhuimeng avatar Jan 02 '19 02:01 qijizhuimeng

再请教一下,通过Control.go(path, state)能够传递回调方法吗?如何做

qijizhuimeng avatar Jan 02 '19 02:01 qijizhuimeng

@qijizhuimeng 路由跳转的回调方法目前无法提供,因为目前浏览器没有开放这样的API,可以自行监听history变化来实现类似功能:

import Control from 'react-keeper';
Control.history && Control.history.listen(function(location, action){

});

lanistor avatar Jan 02 '19 06:01 lanistor