If you're targeting reusable components, then state should be left to the user of your component, or isolated internally via whatever mechanism you like, depending on the component.
That said, some will look better or worse over time, and component libraries will vary. I mean there's Bootstrap, Semantic UI, Material UI and many other UI component libraries. How well a given one fits into the react space, or even your own application will vary. That's the nature of programming.
That said, in 20+ years of developing web applications, React is the first (of very many) web frameworks that felt like the right way to do components. I'm not expecting that it will not eventually be replaced, only that of what I've seen lately, nothing is better enough to replace its' usage... though one might consider another JSX based implementation that's compatible (preact-compat). I also remember many the libraries that were popular before jQuery came about (Prototype, mootools, etc).