I would suggest if you are using a Component based toolkit that you use a UI/Component framework that does it's styling in a sane way (material-ui) over using a CSS centered framework. This is especially for SPA and similar.
While this isn't the case for TFA, seems to be centered around server-oriented content, I'm just not a fan of CSS centered vs component centered frameworks if you're doing client-side development. The disconnect becomes pretty big in practice.
Just my $.02 ... a notable exception might be if you're in a larger environment that has separate designer oriented resources and you are receiving most markup and styling from those resources. Even thin, it's often better to turn your markup into component oriented logic.
If you're starting with a green project, and you really want to use Angular and Material Design. The default components[1][2] from the Angular project implement material design. You should use them instead of the bootstrap + theme. The bootstrap material theme is missing some interactive parts and isn't quite right for material. Namely, the forms and buttons, however there are other bits are just off and not quite right.
If you have an existing project with bootstrap you are trying to update, then in makes more sense, and you may just be better off keeping your bootstrap based components, and updating the (s)css to use the material theme for bootstrap. I would not recommend starting with Bootstrap with modern frameworks (or bulma and similar css based frameworks).
What I would suggest is starting with component libraries that are component-first with sane styling implementations within the library itself. I find that material-ui[3] for React is the gold-standard when it comes to component libraries for modern development.
It's important to note that a given component library (such as material-ui) is not the same as Material Design[4] as a design concept. The libraries implement the design pattern and some do so more closely than others.
1. https://github.com/angular/components
2. https://www.npmjs.com/package/@angular/material
3. https://material-ui.com/
4. https://material.io/design
Looking at the readme on the github site, and I find it really icky in usage tbh. I'd rather use TypeScript, and the module patterns just feel weird vs. the direction everything else is going. It feels like an over-engineered framework from the late 00's.
I'm really not trying to be overly negative, it just feels like a step backwards...
JavaScript is a really hard first language to use... Dive Into Python[1] is considered one of the best getting started books on learning to program. I know it's a completely different language, but it's considered a really good jumping in path.
For JS, Head First[2] is a decent getting started... it's not great for actually understanding JS though. After those, I would probably read Eloquent JavaScript[3] and/or JavaScript: The Definitive Guide[4] (O'Reilly), aka "The Rhino Book".
You may want to start with #4 for at least a few chapters and see how you get through it, it may be enough on its' own.
Also, you might find the Kahn Academy courses on JS useful... I've heard good things on their Intro To JS[5], which seems to be centered on making a web page more interactive as a point of entry.
1. https://www.amazon.com/dp/1430224150 - Dive Into Python
2. https://www.amazon.com/dp/144934013X - Head First JavaScript
3. https://eloquentjavascript.net/
4a. https://www.amazon.com/dp/0596805527 - JavaScript: The Definitive Guide (O'Reilly) 6th edition
4b. https://www.amazon.com/dp/1491952024 - JavaScript: The Definitive Guide (O'Reilly) 7th edition pre-order
5. https://www.khanacademy.org/computing/computer-programming/programming