Ask questions and learn from expert freelancers
This is an interesting question and does not have a straight answer.
Usually React.js should be used on websites where changing DOM elements is done frequently and performance is needed. ReactJS has better performance than Angular 1.X, BUT Angular 2 has almost the same performance as ReactJS.
Both Angular and React has great community support. React has gained more traction in the last months, while Angular was the JS UI framework for a couple of years. Now if you look at the usage there are more websites using Angular than React, but this may change.
If you want to start to learn, I would go with Angular2 first then start learning React.js. Based on my experience the learning curve for React.js is a little steeper than for Angular.
React can in fact be used with Angular as React is but the view (as clearly stated in their docs).
Whether to use the Flux architecture or Angular (which is an 'Heroic MVC' framework) is a better question.
Ask me a thousand times what to use for your next JS app and I'll always give you the same answer. CycleJS. Its simple, functional approach makes it hard to introduce bugs into your apps, and its foundations are pretty strong. Once you get used to it you'll ask yourself "Why not use CycleJS?" - You can use React in Cycle too. It is based on Observables, the same as Redux (which is used in conjuction with React as a flux architecture of sorts - better IMHO).