Почему в React такая схема?
Рендерится то что вернётся из функционального компонента App().
App() рендерит div внутри которого 3 раза рендерится то, что вернёт компонент Welcome(), который, в свою очередь, возвращает заголовок с приветствием.
Вот такой порядок. В чем проблема?
Если через ReactDOM отрендерить тег Welcome мы получим один заголовок с приветствием вместо трёх
Два функциональных компонента первый - App выводит пачку вторых компонентов Welcome
Открой песочницу и сам попробуй написать https://codesandbox.io/s/