Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应+;使用查询对路由器作出反应+;生命周期_Javascript_Reactjs_Lifecycle_React Router - Fatal编程技术网

Javascript 反应+;使用查询对路由器作出反应+;生命周期

Javascript 反应+;使用查询对路由器作出反应+;生命周期,javascript,reactjs,lifecycle,react-router,Javascript,Reactjs,Lifecycle,React Router,新的反应和反应路由器。实际上使用的是旧版本的react router v0.13 我的问题是,在页面更改时删除查询参数的适当时间在哪里 我有一些使用react路由器链接的页面链接。然后,当用户在页面上时,我更新一些查询参数。但是当用户要导航到一个新页面时,我想根据某些条件删除n个参数 我的想法是在componentWillUnmount中执行此操作。然而,当我进入我的新页面时,在render甚至componentDidMount内部,我有我刚刚尝试删除的旧参数 在卸载时,我可以在我的组件中看到它

新的反应和反应路由器。实际上使用的是旧版本的react router v0.13

我的问题是,在页面更改时删除查询参数的适当时间在哪里

我有一些使用react路由器链接的页面链接。然后,当用户在页面上时,我更新一些查询参数。但是当用户要导航到一个新页面时,我想根据某些条件删除n个参数

我的想法是在componentWillUnmount中执行此操作。然而,当我进入我的新页面时,在render甚至componentDidMount内部,我有我刚刚尝试删除的旧参数

在卸载时,我可以在我的组件中看到它们已经消失了,但随后它们又重新出现在我的下一个组件中。比赛条件?还是我应该把这件事搬到别处去

componentWillUnmount: function(args) {
     var page = this.getPathname();
     var query = _.omit(this.getQuery(), args);

     this.replaceWith(page, {}, query);
}
我如何将它们发送到下一页的粗略代码

var query = this.getQuery();

<Link to="pageA" query={query}>Page A</Link>

var query=this.getQuery();
A页

如何将用户发送到新页面?
var query=this.getQuery();页面A
我认为正确的方法是在单击链接时将所需的查询正确地传递到新页面。这意味着您的查询逻辑应该在离开页面的最后一次
呈现之前反映正确的值。因此,我有一个处理导航的组件,因此正在尝试获取props/getQuery()。我希望在调用getQuery()时能够反映出删除情况。它仍然可以被分离出来-但是
链接
元素必须具有正确的值。这样想:在当前的意义上,您要求一个网页打开另一个网页,然后在该网页被打开后更改其内容。如果可能的话,这将是一个巨大的安全风险。我的随机脚本可以打开你的银行页面并获取你的用户名和密码。如何将用户发送到新页面?
var query=this.getQuery();页面A
我认为正确的方法是在单击链接时将所需的查询正确地传递到新页面。这意味着您的查询逻辑应该在离开页面的最后一次
呈现之前反映正确的值。因此,我有一个处理导航的组件,因此正在尝试获取props/getQuery()。我希望在调用getQuery()时能够反映出删除情况。它仍然可以被分离出来-但是
链接
元素必须具有正确的值。这样想:在当前的意义上,您要求一个网页打开另一个网页,然后在该网页被打开后更改其内容。如果可能的话,这将是一个巨大的安全风险。我的随机脚本可以打开你的银行页面,获取你的用户名和密码。