gpt4 book ai didi

reactjs - react 路由器自动添加查询字符串参数

转载 作者:行者123 更新时间:2023-12-01 13:33:01 25 4
gpt4 key购买 nike

我是 reactjs 的新手。我的问题对于 React 开发人员来说可能非常简单,但我想通过这个论坛获得一些帮助。

我有两个不同的页面,一个是路由配置页面,另一个是链接页面,我试图加载另一个组件,该组件重定向到购物车页面,显示购物车中的项目列表。因此,默认情况下,主页 (app.js) 模块必须重定向到购物车页面。

我正在使用 React Router v1.0。

路由配置页面:(app.js)

React.render((<Router>
<Route path="/" component={FluxShoppingCart}>
<IndexRoute component={FluxShoppingCart}/>
<Route name="cart" component={ViewCart} />
</Route>
</Router>),document.getElementById('container'));

链接页面:(Flux Cart 组件)

<Link to="cart"><button type="button" className="btn btn-default btn-sm">Cart&nbsp;&nbsp;{totalCartItems}</button></Link>

两者都在不同的页面中。现在,当我尝试单击购物车按钮时,该按钮也会使用一些查询参数更新 url。默认加载显示

http://localhost:8080/#/?_k=exw21r

并在与购物车的链接上显示

http://localhost:8080/#/cart?_k=xme60o

check with cart and its params

任何人都可以通过更正我的代码/共享一些资源(博客/视频)来帮助我解决这种情况。我需要加载默认组件并在单击购物车按钮时它必须重定向到另一个组件。我检查了互联网上的许多示例,这些示例显示在同一页面上使用不同的组件,但我在不同的页面中使用。请只做那些需要的。提前致谢。

最佳答案

history模块添加了一个唯一的查询字符串,因此在使用基于 window.location.hash 的历史记录时,它可以将每个历史记录项与 sessionStorage 中的某个状态相关联。

它的文档对此进行了讨论,并向您展示了选择退出它的一半解决方案:

另一半是将历史实例传递给您的 Router

var createHashHistory = require('history/lib/createHashHistory')

// Opt out of persistent state query key for for hash history
var history = createHashHistory({queryKey: false})

<Router history={history}>...

您还需要将 history 添加到您自己的依赖项中。

关于reactjs - react 路由器自动添加查询字符串参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32931498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com