हमारे आवेदन हाल ही में अद्यतन करने के लिए बीटा संस्करणों की प्रतिक्रिया-रूटर-डोम, और चीजें ठीक थे. फिर जब मैं अद्यतन करने की कोशिश करने के लिए 6.0.2, मैं बहुत सारे पाने के अपरिवर्तनीय त्रुटियों के बारे में All component children of <Routes> must be a <Route> or <React.Fragment>
. यह है क्योंकि हम हमारे मार्गों के रूप में परिभाषित किया:
की सुविधा है । jsx:
export const FeatureRoutes = () => (
<Routes>
<Route path="/" element={<Feature1 />} />
<Route path="/*" element={<NotFound />} />
</Routes>
);
मार्गों.jsx:
export const routes = [
{
path: "feature",
component: FeatureRoutes,
},
/* lots of other routes, defined the same way: <Route> wrapped in a component */
];
अनुप्रयोग.jsx:
<Routes>
{routes.map((route) => (
<Route key={route.path} path={`${pathPrefix}/${route.path}/*`}>
<route.component />
</Route>
))}
</Routes>
अब इस परिणाम में त्रुटि से ऊपर है, क्योंकि भीतरी मार्गों (उदाहरण के लिए FeatureRoutes
) लिपटे रहे हैं में एक कार्यात्मक घटक है । मैंने कोशिश की है लौटने शाब्दिक JSX लेकिन फिर एक और त्रुटि है । मैं नहीं हूँ यकीन है कि कैसे इसे ठीक करने के लिए: केवल जवाब देने के लिए पूरी तरह से फिर से लिखना कैसे हम परिभाषित हमारे मार्गों? हम भी कुछ किया है कि मार्गों में संग्रहित कर रहे हैं वापस-अंत और नक्शा करने के लिए कस्टम घटक - फिर मैं नहीं हूँ यकीन है कि कैसे मैं लपेट कर सकते हैं इन अब मैं कर रहा हूँ करने के लिए अनुमति नहीं है एक घटक के बीच मार्गों और मार्ग.
किसी भी सलाह की सराहना की है ।