reactjs——如何将对象数据干净地放入url——以及如何访问这些参数?
我正在开发一个react js应用程序,我需要创建一个重定向,它将转到一个url,使用一组参数——一个id,然后是多个术语——键/值对类型的方法 资料 id=23 术语={“预算”:“现在看起来怎么样”,“性别”:“男性”,“年龄”:32} 所以url看起来像这样 partnerspage?id=23&terms[预算]=现在看起来怎么样&terms[性别]=男性&terms[年龄]=32 --然后在这个合作伙伴页面上,组件确实挂载了 我想获得对这些数据的访问权——因此——我正在使用路由,在一些页面上,我使用正斜杠activate/{token}进行路由-- 这些参数的侦听器是否类似于reactjs——如何将对象数据干净地放入url——以及如何访问这些参数?,reactjs,Reactjs,我正在开发一个react js应用程序,我需要创建一个重定向,它将转到一个url,使用一组参数——一个id,然后是多个术语——键/值对类型的方法 资料 id=23 术语={“预算”:“现在看起来怎么样”,“性别”:“男性”,“年龄”:32} 所以url看起来像这样 partnerspage?id=23&terms[预算]=现在看起来怎么样&terms[性别]=男性&terms[年龄]=32 --然后在这个合作伙伴页面上,组件确实挂载了 我想获得对这些数据的访问权——因此——我正在使用路由,在一些
console.log(“params”,this.props.location.search)?——如何从url获取数据?为我在评论中提到的解决方案添加了一个沙箱,请查看,如果有问题,请联系我
您是否使用
react路由器
进行路由?如果是,您可以使用路由器hoc将组件包装成,或者在您可以使用的功能组件中,useLocation
hook,并访问位置。搜索
。然后,您可能需要使用类库解析字符串,或者我没有为此项目使用钩子-但是是的,我使用了withRouter打开-您得到了一个js沙盒演示,演示了您的意思我甚至不确定应该如何使url看起来-因为服务api仍然有点单调-您可以尝试this.props.match.params.id
来获取id
或其他变量。使用hooksuseParams()
将有所帮助。不,我需要先创建字符串,并像重定向一样使用它——所以partners?id=2&terms=…-我怎么写这个对象here@TheOldCounty这也是可能的,我更新了,只是一般的方法,您将需要在实现中使用相同的原则。谢谢,我访问了它--如果您希望对url或其他内容进行哈希处理,使其不通过对象发送--然后在另一端取消对其进行哈希处理--我猜不是md5--而是可以发送的内容,并且不会在翻译或保留url时丢失shorter@TheOldCounty是的,你可以试试,但我不认为它会显著缩短url,如果你想缩短url,你必须在本地存储中有一个键入url的映射,这里你可以使用url中的键进行检索。关于它,我真的没有什么要说的了——如果它可以是md5,然后反转——但是——在url中有一个对象的那一刻——我可以拿起它并使用它——所以现在可以了