Я хочу отображать определенные компоненты на основе имени маршрута в react native
Он выполняет свою работу, но когда компонентов больше 10, отлаживать код становится сложно. Будет найден эффективный способ.
name={route.name}
component={
route.name == 'Cart'
? Cart
: route.name == 'Checkout'
? Checkout
: Home
}
options={{
title: route.name, //Set Header Title
}}
/>```
1 ответ
Если вам нужно проверить более 5 условий, используйте условный оператор ?:
может быть сложно.
Итак, что я предпочитаю использоватьswitch
случай, чтобы проверить route
назовите и назначьте соответствующий компонент variable
и используйте эту переменную там, где вы хотите отобразить свой компонент.
let route = route.name;
let dyanamic_compoent;
switch(route){
case "route_name":
dyanamic_compoent = your_compoent_name;
break;
case "route_name":
dyanamic_compoent = your_compoent_name;
break;
default:
dyanamic_compoent = default_your_compoent_name;
}
Поместите этот код в свой компонент в соответствии с вашими потребностями. и использоватьdyanamic_component
далее в вашем коде.
Если это не то, что вам нужно, дайте мне знать и добавьте дополнительный код, чтобы мы могли найти решение.