How to generate a new Angular project
Inspecting the skeleton Angular app
Inserting an Angular app into index.html
Styling the Navigation Component
Moving the HTML of the App Component
Writing the ProfileComponent from scratch
Adding Global Styles
Showing the Profile Page Using Angular Routing
Adding a login component
Binding Template Files to Class Files
Property binding in Angular
Binding a property to a button click
Comparing one-way and two-way data binding in Angular
Examining Property Bindings in Angular in More Detail
Understanding Services in Angular
Working with HttpClient
Showing the Profile Page Using Angular Routing
[#<Tutorial id: 894, title: "How to generate a new Angular project", body: "<div>Before you begin, make sure you have Node and...", video: "", course_id: 29, created_at: "2019-11-13 18:34:37.099160000 +0000", updated_at: "2020-05-30 13:06:51.317051000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "how-to-generate-a-new-angular-project", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7610, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 908, title: "Inspecting the skeleton Angular app", body: "<div>The minimal Angular project (which we get whe...", video: "", course_id: 29, created_at: "2019-11-29 10:42:13.326016000 +0000", updated_at: "2020-05-30 13:06:51.332189000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "inspecting-the-skeleton-angular-app", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: "", tier_id: nil, paid: false, text_public_for_seo: false, position: 7620, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 909, title: "Inserting an Angular app into index.html", body: "<div>Let’s step outside the ./src/app folder and f...", video: "", course_id: 29, created_at: "2019-11-29 11:06:45.979523000 +0000", updated_at: "2020-05-30 13:06:51.344108000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "inserting-an-angular-app-into-index-html", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: "", tier_id: nil, paid: false, text_public_for_seo: false, position: 7630, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 910, title: "Styling the Navigation Component", body: "<div>Obviously, our navigation is currently unstyl...", video: "", course_id: 29, created_at: "2019-11-29 11:33:19.058829000 +0000", updated_at: "2020-05-30 13:06:51.356315000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "styling-the-navigation-component", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: "", tier_id: nil, paid: false, text_public_for_seo: false, position: 7640, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 911, title: "Moving the HTML of the App Component", body: "<div>Let's move the HTML of the App Component to t...", video: nil, course_id: 29, created_at: "2019-11-29 11:46:53.142671000 +0000", updated_at: "2020-05-30 13:06:51.368330000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "moving-the-html-of-the-app-component", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7650, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 912, title: "Writing the ProfileComponent from scratch", body: "<div>Remember the NavigationComponent diagram? We ...", video: nil, course_id: 29, created_at: "2019-11-29 11:47:22.321285000 +0000", updated_at: "2020-05-30 13:06:51.380651000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "writing-the-profilecomponent-from-scratch", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7660, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 913, title: "Adding Global Styles", body: "<div>We now have exact same CSS code inside two di...", video: nil, course_id: 29, created_at: "2019-11-29 11:47:41.463087000 +0000", updated_at: "2020-05-30 13:06:51.393816000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "adding-global-styles", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7670, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 914, title: "Showing the Profile Page Using Angular Routing", body: "<div>Let’s go back to the app.component.html file,...", video: nil, course_id: 29, created_at: "2019-11-29 11:48:13.265039000 +0000", updated_at: "2020-05-30 13:06:51.405914000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "showing-the-profile-page-using-angular-routing", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7680, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 915, title: "Adding a login component", body: "<div>Now might be a good time to add another compo...", video: nil, course_id: 29, created_at: "2019-11-29 11:50:39.799022000 +0000", updated_at: "2020-05-30 13:06:51.418140000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "adding-a-login-component", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7690, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 916, title: "Binding Template Files to Class Files", body: "<div>There are many ways to connect templates with...", video: nil, course_id: 29, created_at: "2019-11-29 11:52:14.563992000 +0000", updated_at: "2020-05-30 13:06:51.430022000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "binding-template-files-to-class-files", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7700, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 917, title: "Property binding in Angular", body: "<div>We use square brackets to bind to HTML elemen...", video: nil, course_id: 29, created_at: "2019-11-29 11:52:50.270266000 +0000", updated_at: "2020-05-30 13:06:51.442882000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "property-binding-in-angular", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7710, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 918, title: "Binding a property to a button click", body: "<div>In this exercise, we’ll bind our border prope...", video: nil, course_id: 29, created_at: "2019-11-29 11:53:13.198266000 +0000", updated_at: "2020-05-30 13:06:51.455654000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "binding-a-property-to-a-button-click", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7720, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 919, title: "Comparing one-way and two-way data binding in Angu...", body: "<div>So far, we’ve seen examples of one-way bindin...", video: nil, course_id: 29, created_at: "2019-11-29 11:53:47.081612000 +0000", updated_at: "2020-05-30 13:06:51.471691000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "comparing-one-way-and-two-way-data-binding-in-angu...", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7730, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 920, title: "Examining Property Bindings in Angular in More Det...", body: "<div>Based on what we’ve covered so far, you might...", video: nil, course_id: 29, created_at: "2019-11-29 11:54:07.241916000 +0000", updated_at: "2020-05-30 13:06:51.485760000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "examining-property-bindings-in-angular-in-more-det...", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7740, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 921, title: "Understanding Services in Angular", body: "<div>Services in Angular are used as data provider...", video: nil, course_id: 29, created_at: "2019-11-29 11:54:40.389126000 +0000", updated_at: "2020-05-30 13:06:51.497981000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "understanding-services-in-angular", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7750, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 922, title: "Working with HttpClient", body: "<div>To get started with HttpClient, we just need ...", video: nil, course_id: 29, created_at: "2019-11-29 11:54:59.705131000 +0000", updated_at: "2020-05-30 13:06:51.511135000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "working-with-httpclient", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7760, visible_to_anyone_with_link: false, list_on_site: false, featured: false>, #<Tutorial id: 923, title: "Showing the Profile Page Using Angular Routing", body: "<div>Let’s go back to the app.component.html file,...", video: nil, course_id: 29, created_at: "2019-11-29 12:01:20.675589000 +0000", updated_at: "2020-05-30 13:06:51.528115000 +0000", previewable: false, audio: nil, course_module_id: nil, slug: "showing-the-profile-page-using-angular-routing-73e...", description: "", published: true, video_thumbnail: "https://learnetto-blog.s3.amazonaws.com/blog/2019-...", teacher_id: 1537, youtube_video: nil, tier_id: nil, paid: false, text_public_for_seo: false, position: 7770, visible_to_anyone_with_link: false, list_on_site: false, featured: false>]