將自訂屬性傳遞給React-Router v4 中的Router 元件
使用React-Router 處理多頁React 應用程式時,傳遞自訂屬性各頁面的props 可以增強程式碼的靈活性。這允許跨組件自訂功能和數據共享。
但是,您遇到了一個問題,即通常用於存取透過路由傳遞的 props 的 this.props.route 物件傳回未定義。要解決此問題,請考慮在Route 元件中使用render prop,根據React-Router 文件:
<Route path="/" exact render={(props) => (<Home test="hi" {...props}/>)} />
在這種方法中,render prop 函數接收與元件prop 相同的所有prop,包括自定義的prop類似測試的道具。若要存取 Home 元件中的 prop,請使用 this.props.test。
此外,請確保在 render prop 函數中傳遞 {...props},因為這可以確保預設的路由器 props(例如位置) 、歷史記錄和匹配也會傳遞到您的元件。
以上是如何在 React-Router v4 中將自訂 Props 傳遞給 Router 元件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!