Não sei se entendi a dúvida corretamente, mas atualmente a principal forma de separar a lógica é isolando ela em um ou mais hooks. Inclusive é possível passar hooks diferentes pro componente através das props, alterando o comportamento do componente sem adicionar if
s na lógica.
Em resposta a ReactJs
1