代码之家  ›  专栏  ›  技术社区  ›  Navin Gelot

如何在react组件的导航中加载相同的道具?

  •  0
  • Navin Gelot  · 技术社区  · 6 年前

    react-router v3 我在主页上有几个下拉菜单,在产品页面上有几个按钮可以移动。 当用户再次返回主页时,它应该显示用户选择的相同值。但是它如何重新加载所有值。

    有没有什么方法可以让我使用react路由器轻松地保持价值?

    <Route path="/" component={Main} />
            <Route path="product" >
                <IndexRoute component={Product}/>
                <Route path="offer">
                    <IndexRoute component={OfferForm} />
                    <Route path="confirm" component={OfferConfirm}/>
                </Route>
                <Route path="immediate">
                    <IndexRoute component={ImmediateOrderForm} />
                    <Route path="confirm" component={OfferConfirm}/>
                </Route>
            </Route>
        </Route>
    
    2 回复  |  直到 6 年前
        1
  •  0
  •   Abdul    6 年前

    可以在重定向或使用params导航到另一个页面时传递值,并且可以在组件中获取该值。

    <Redirect to={{ pathname: '/url', params: { name: edit } }} />;
    

    在主页中获取如下值

    let name = this.props.location.params.name;
    

    this.props.history.push({
      pathname: '/url',
      params: { name: edit }
    });
    

    希望这会有帮助。我不认为你可以直接使用react路由器。

        2
  •  0
  •   xadm    6 年前

    您需要将choosen设置存储在 localStorage 你可以用 redux redux-persist

    您还可以使用“详细信息”页上的“保存”(页间共享)值 '请参阅类似的…' 章节。它似乎可以在details查询中完成,但我会在一个单独的查询(高度动态)中完成——detail view(主查询)可以是SSR ed(有/没有默认的相似性),可以在重新水化/装载/初始呈现之后用新数据更新。