The better programmer will be the one who learns the concepts of programming and data structures. Whatever language they are using will have little to no bearing on their "better"-ness. This is a false dichotomy. You cannot do ReactJS without VanillaJS. And the vanilla js developer will inevitably come up with solutions that are akin to the shortcuts you get from ReactJS. You should think of all of these and more as just tools in your toolchest. If you ask a mechanic whether they are a better mechanic for using an auto-tester versus some long series of manual tests, they will tell you that they have had to do both in their career.
If you are learning JS, then you should stick with vanilla js until you get the core language down. Then you can use the frameworks with confidence that you now what's going on. This is the same with ES5 vs ES6.
What I think you were trying to convey is that if you just limit yourself to learning ReactJS you'll miss out on being a well rounded programmer. However if all you ever use is vanilla js you run the risk of reinventing the wheel and having code that is at the end of the day inferior because it wasn't tested or used by thousands who have contributed changes and fixes.
As a modern web developer, you will encounter new, current, and legacy code forever. How you deal with it is your measure as a good programmer.