нативный жс предпочтителен при оптимизации фронта, так не тянет за собой всю библиотеку. React как и любая SPA-технология хороша, когда тебе нужно приложение с определенными требованиями) Как пример, видео плеер, которые при переходе между Page должен продолжать работать без перезагрузок. На Пыхе с шаблонами такое не сделать, хоть жс, хоть жкуери используй, так как страница все равно перегружается, а на Reacte это легко сделать, так как бандл, после рендеринга не перегружается, а обращаясь по АПИ к бэку может непрерывно воспроизводить видео в отдельном попапе, при этом можно гулять по приложению.