From 0bc65cd6dadbffab8160f3a75f7b0bf3baa82f9d Mon Sep 17 00:00:00 2001 From: thomas laforge Date: Fri, 11 Nov 2022 21:51:34 +0100 Subject: [PATCH] challenge 4 complete --- README.md | 5 +- apps/context-outlet-type/README.md | 45 ++++++++++++++++++ .../img/unknown-person.png | Bin 0 -> 48272 bytes .../img/unknown-student.png | Bin 0 -> 46530 bytes .../src/app/app.component.ts | 22 ++++----- .../src/app/list.component.ts | 24 +--------- .../src/app/person.component.ts | 30 ++---------- 7 files changed, 60 insertions(+), 66 deletions(-) create mode 100644 apps/context-outlet-type/README.md create mode 100644 apps/context-outlet-type/img/unknown-person.png create mode 100644 apps/context-outlet-type/img/unknown-student.png diff --git a/README.md b/README.md index fbd0937..dcbbd35 100644 --- a/README.md +++ b/README.md @@ -17,11 +17,12 @@ This goal of this project is to help you get better at Angular and NgRx buy reso Angular Projection -Directive enhancemen +Directive enhancement +Directive enhancemen NgRx -Effect vs Selector +Effect vs Selector ## License diff --git a/apps/context-outlet-type/README.md b/apps/context-outlet-type/README.md new file mode 100644 index 0000000..eff16fd --- /dev/null +++ b/apps/context-outlet-type/README.md @@ -0,0 +1,45 @@ +

NgTemplateOutlet Strongly Typed

+ +## Information + +Angular offer the static function **ngTemplateContextGuard** to strongly type structural directive. + +However the context of **NgTemplateOutlet** type is **Object**. But which the help of the above guard, we can improve that behavior. + +## Statement + +In this exercice, we want to learn how to strongly typed our ng-template in our AppComponent. + +This exercice has two level of complexity. + +### Level 1: known Interface + +Currently we have the following piece of code. + +Unkown Person + +As we can see, name is of type "any". We want to infer the correct type. + +### Level 2: generic Interface + +Currently we have the following piece of code. + +Unkown Person + +As we can see, student is of type "any". We want to infer the correct type. + +But in this part, we can pass to ListComponent, a list of any types. And we still want the correct type to be infered. + +## Submitting your work + +1. Fork the project +2. clone it +3. npm install +4. **nx serve context-outlet-type** +5. _...work On it_ +6. Commit your work +7. Submit a PR with a title beginning with **Answer:4** that I will review and other dev can review. + +NgTemplateOutlet Strongly Typed + +_You can ask any question on_ Twitter diff --git a/apps/context-outlet-type/img/unknown-person.png b/apps/context-outlet-type/img/unknown-person.png new file mode 100644 index 0000000000000000000000000000000000000000..9ab0a2e7d2547cf77191c75afe83954b998d0624 GIT binary patch literal 48272 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 z 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 literal 0 HcmV?d00001 diff --git a/apps/context-outlet-type/img/unknown-student.png b/apps/context-outlet-type/img/unknown-student.png new file mode 100644 index 0000000000000000000000000000000000000000..247a29e91240f3b13cd98340afc273591119b9cc GIT binary patch literal 46530 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�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 T>?#Wf{JfM>dQl|t=HveXe>v{M literal 0 HcmV?d00001 diff --git a/apps/context-outlet-type/src/app/app.component.ts b/apps/context-outlet-type/src/app/app.component.ts index ca29833..2683ba9 100644 --- a/apps/context-outlet-type/src/app/app.component.ts +++ b/apps/context-outlet-type/src/app/app.component.ts @@ -1,35 +1,29 @@ import { NgTemplateOutlet } from '@angular/common'; import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ListComponent, ListTemplateDirective } from './list.component'; -import { PersonComponent, PersonDirective } from './person.component'; +import { ListComponent } from './list.component'; +import { PersonComponent } from './person.component'; @Component({ standalone: true, - imports: [ - NgTemplateOutlet, - PersonDirective, - PersonComponent, - ListTemplateDirective, - ListComponent, - ], + imports: [NgTemplateOutlet, PersonComponent, ListComponent], selector: 'app-root', template: ` - + {{ name }}: {{ age }} - + {{ student.name }}: {{ student.age }} - {{ i }} - + - + {{ city.name }}: {{ city.country }} - {{ i }} - + `, changeDetection: ChangeDetectionStrategy.OnPush, diff --git a/apps/context-outlet-type/src/app/list.component.ts b/apps/context-outlet-type/src/app/list.component.ts index eeef366..7cafdcf 100644 --- a/apps/context-outlet-type/src/app/list.component.ts +++ b/apps/context-outlet-type/src/app/list.component.ts @@ -3,32 +3,10 @@ import { ChangeDetectionStrategy, Component, ContentChild, - Directive, Input, TemplateRef, } from '@angular/core'; -interface ListTemplateContext { - $implicit: TItem; - appList: TItem; - index: number; -} - -@Directive({ - selector: 'ng-template[appList]', - standalone: true, -}) -export class ListTemplateDirective { - @Input('appList') data!: TItem[]; - - static ngTemplateContextGuard( - dir: ListTemplateDirective, - ctx: unknown - ): ctx is ListTemplateContext { - return true; - } -} - @Component({ selector: 'list', standalone: true, @@ -50,6 +28,6 @@ export class ListTemplateDirective { export class ListComponent { @Input() list!: TItem[]; - @ContentChild(ListTemplateDirective, { read: TemplateRef }) + @ContentChild('listRef', { read: TemplateRef }) listTemplateRef!: TemplateRef; } diff --git a/apps/context-outlet-type/src/app/person.component.ts b/apps/context-outlet-type/src/app/person.component.ts index 5b6359d..4c33ae3 100644 --- a/apps/context-outlet-type/src/app/person.component.ts +++ b/apps/context-outlet-type/src/app/person.component.ts @@ -1,35 +1,11 @@ import { NgTemplateOutlet } from '@angular/common'; -import { - Component, - ContentChild, - Directive, - Input, - TemplateRef, -} from '@angular/core'; +import { Component, ContentChild, Input, TemplateRef } from '@angular/core'; interface Person { name: string; age: number; } -interface PersonContext { - $implicit: string; - age: number; -} - -@Directive({ - selector: 'ng-template[person]', - standalone: true, -}) -export class PersonDirective { - static ngTemplateContextGuard( - dir: PersonDirective, - ctx: unknown - ): ctx is PersonContext { - return true; - } -} - @Component({ standalone: true, imports: [NgTemplateOutlet], @@ -47,6 +23,6 @@ export class PersonDirective { export class PersonComponent { @Input() person!: Person; - @ContentChild(PersonDirective, { read: TemplateRef }) - personTemplateRef!: TemplateRef; + @ContentChild('#personRef', { read: TemplateRef }) + personTemplateRef!: TemplateRef; }