1.5 Angular Modules From the CLI
In this lesson we'll take a look at which Angular modules get installed when scaffolding an app using Angular-CLI. Angular is modular, so we don't automatically get the entire library.
1.Introduction6 lessons, 42:00
2.Get Started With Angular7 lessons, 42:38
3.Core Concepts7 lessons, 55:20
4.Template Deep Dive11 lessons, 1:10:56
5.Forms10 lessons, 1:45:41
6.Routing9 lessons, 1:15:10
7.Using the HTTP Client5 lessons, 56:24
8.Testing10 lessons, 1:23:27
9.Building for Production1 lesson, 03:40
10.Conclusion1 lesson, 01:32
1.5 Angular Modules From the CLI
Hi folks, in this lesson we're gonna take a quick look at the different Angular modules that the CLI installed for us when we created our application. Unlike the 1.x versions of Angular, the newer 2 plus versions of Angular including Angular 5 which we're using in this course, are completely modular. This is great because instead of installing a single huge monolithic framework that includes everything, we can just install and use only the parts that we want to actually use. So lets see which modules we get by default. Lets open up the package.json file. This file contains meta information about our projects. In the dependency section, we can see that there are a number of common modules. All of the angular ones are prefixed with @angular. And we can see that we get the animations module, the common module, he compiler, the core module, the forms module, the http module, platform browser and platform browser dynamic, and the router modules. So these are all Angular modules that we're going to make use of in the application, and which we'll need to form part of the actual finished application. So that's why they're in the dependencies section. If we scroll down a bit, we can see that there are also some dev dependencies. So these are dependencies that we're going to be making use of while we're building the application, but which won't actually need to be served with the application when it gets deployed for end users to make use of. And as well as the Angular dependencies, there are also a couple of non-Angular dependencies which are created by third parties, but which Angular itself makes use of. So these are the core-js, rxjs, and zone.js files. Now, throughout the course as we use bits of those dependencies, we will take a look at them, but we're not gonna focus on them because, as I said, they are third party. So now in the devDependencies section, we can see that we have a number of Angular dependencies once again. We get the CLI and the compiler CLI. So we're going to be using those as we use the Angular CLI to develop the application. We also get a file called language service, and that is what provides some of the services that the IDE makes use of, so some of the TypeScript things. And we also get Jasmine and some types. And they provide information to TypeScript. So there's a couple there for Jasmine, and there's one for Node. And as well as these, we also get some Jasmine utilities, we'll need these for writing our unit tests. And we get some comma dependencies and again, we'll use those for unit tests. But they're more for actually running the unit tests than they are for creating them. And we also get some TypeScript files, we get TSLint. We get TypeScript itself and TypeScript for Node. And the protractor dependency there is used for running the end-to-end tests. So, I just want to point out that the types files that we get here are kind of default ones that we're using because we're using Jasmine in this application. If we're using any other third party dependencies, like if you wanted to use jQuery, for example. Not that you'd need to because Angular does everything that jQuery can do much, much more. But if you did want to use that, you could install the types file for jQuery. And that would tell TypeScript about the different types the jQuery provided. And it would stop us getting things like compiler warnings when we try to do a production build because TypeScript didn't know what a particular thing was. So we aren't going to be using any third party dependencies. We won't need to install any additional types. But depending on the application that you're building, you might wanna do that. And if you do want to do that, there are many, many types for many, many common third party libraries that can be installed. And they would go into this devDependency section here. So in this lesson, we looked at exactly which parts of the Angular framework get installed by default when we scaffold out an application using the Angular CLI. Thanks for watching.