Банально
<Tabs activeTab={activeTab} onChangeActiveTab={handleChangeActiveTab} />
{activeTab === 0 && <FirstTabContent />}
И бла бла бла
Да и делать ошибки надо, а не спрашивать, так как твой мозг будет понимать где не надо делать так и так, то я бы тут сделал бы так как считаю нужным, далее получил баг - пошел поправил, пересмотрел подход, прям всю описывать всю логику с кейсами тебе не будут
Твоя философия однозначна верна)
Но решения всё же разные есть, есть хорошие, а есть такие, на которые смотреть противно, права на такие ошибки я не имею, поэтому спрашиваю в общем, по какому принципу делать этот компонент. А ошибки и баги - это будет в любом случае, мне нужен только фундамент решения