javascript / expert
Snippet
Strikte Template-Typ-Prüfung mit ngTemplateContextGuard
Um volle Typsicherheit in Angular-Templates für Struktur-Direktiven zu erreichen, können Sie einen statischen Type-Guard verwenden. Dies teilt dem Angular Language Service die genaue Form des Kontext-Objekts mit und ermöglicht Autovervollständigung und Fehlerprüfung im HTML.
snippet.js
1
2
3
4
5
6
7
8
9
interface UserContext<T> { $implicit: T; appRole: string; }@Directive({ selector: '[appUserCard]' })export class UserCardDirective<T> {static ngTemplateContextGuard<T>(dir: UserCardDirective<T>,ctx: any): ctx is UserContext<T> { return true; }}
angular
Erklärung
1
static ngTemplateContextGuard
Ein spezielles statisches Mitglied, das vom Angular-Compiler für die Template-Typprüfung erkannt wird.
2
ctx is UserContext<T>
Ein TypeScript-Typprädikat, das den 'any'-Kontext auf ein spezifisches Interface einschränkt.