In 1999, the Mars Climate Orbiter was a spacecraft that NASA launched to explore Mars. However, the orbiter went off course and the mission failed. NASA lost $327 million in this mission.
The problem? A component, built by a third party, sent measurements in the imperial system (i.e. miles, yards, pounds, etc.), but the component that received them, built by NASA itself, expected values in the metric system (i.e. metres, kilograms, etc.)
Every single developer in history has made bugs and mistakes. Every single one of them. And they will continue making them, no matter how talented or experienced they are. So, don't discourage if you make mistakes while learning, even if it happens many times!
Mistakes are not only a part of learning, they're a part of programming.
In other languages, there are a small set of libraries and frameworks that become the de facto standard, the safe choice. For example, if a Ruby developer wants to build a website, they'll probably use the Ruby on Rails framework. If a PHP developer wants to do the same, they'll do it with Laravel.
Other options and alternatives do exist, but these libraries are the default choice in these other languages.
On the other hand, in the JS world, there are simply too many options for doing anything. How do you want to use for the UI: React, Vue.js, Angular, Svelte? And how to manage the state: Redux, Vuex, Mobx?
So, if you find yourself struggling with having to choose which library or framework to use, remember that you're not necessarily the problem.
By the way, I've made a guide to help you decide which framework to use.