簡體   English   中英

創建包裝組件並將其傳遞到React Router的推薦方法是什么?

[英]What's the recommended way to create and pass a wrapped component to React Router?

我有一堆路線,我想將為每個路線呈現的組件包裝在樣式div ,但是我正在嘗試編寫代碼DRYer。

您將如何重構它,以便我可以添加n條路由而不必每次都重復<div>

<Route
   path="/"
   exact
   component={
     <div className={css(styles.fadeIn)}>
       <Home />
     </div>
    }
   />
<Route
 path="/about"
 exact
 component={
   <div className={css(styles.fadeIn)}>
     <About />
   </div>
  }
 />

您可以將Route組件與其他任何react組件組成幾乎相同。 您可以執行以下操作:

const AnimatedRoute = ({ component: Component, ...rest}) => (
  <div className={css(styles.fadeIn)}>
    <Route component={Component} {...rest} />
  </div>
)

//Somewhere else
<AnimatedRoute component={About} />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM