Out of the box, ReactJS requires knowledge of third-party components for routing, state management and API or RESTful integration.
I started my journey with ReactJS around 2016, when I was well within my Angular 2+ study. During that time, ReactJS was touted by my fellow teammates as a library that—along with third-party components for routing and state management—could allow more efficient building of single page applications than Angular 2 (Angular 2 routing issues during that time were numerous and required somewhat "hacky" solutions until future updates).
During 2016, I saw more fellow Angular 2 developers jumping ship to learn and implement ReactJS as the newest framework (when coupled with other components) to replace legacy AngularJS applications.
In truth, my experience with ReactJS has largely been personal, as I have not had the opportunity to use the library for any of the enterprise applications I have worked on in the past.
I had experience working on a small ReactJS proof of concept while working at Equifax. I also had the opportunity to build a ReactJS version of our interal application at Bank of America as a way to quickly catch up with the library's syntax (it became known that future applications would most likely be using ReactJS).
Personally, I am recreating my entire Tramel Woodard website in ReactJS. I expect for the ReactJS version of Tramel Woodard to be ready before the end of 2018.
I have since relocated back to California and in addition have found that there seem to be more job openings for ReactJS than Angular in the bay area specifically. For this reason, I look forward to perfecting my ReactJS skills for future job opportunities.