-
- after authentication is implemented:
- actions
- router/Resolver for loading courses
- implement Effect for the action loadAllCourse
- implement the reducer
- use of ngrx EntityState
- replace reload in home component by selectors
- avoid fetching the courses from backend multiple times
- remove the loading indicator for the courses
- Editing Entity Data
- Saving the Data
- after authentication is implemented, alternative:
- after authentication is implemented:
-
- Dependency Injection
- Services as Providers
- add Bootstrap support
- einfache app.component.html für Bootstrap
- html - template
- NG-CONTAINER
- Input Properties
- Events
- Attribute Directives
- Pagination
- Directives vs Components
- Browser Tricks
- localen server starten
- globale Variablen (z.B. für unterscheidung Prod / Test Environment)
- update packages
- Perform a basic update to the current stable release of the core framework and CLI by running the following command.
- Livecycle Hooks
- Query Parameter of Routes
- @ViewChild()
- Debugging:
- using *ngIf with an boolean Observable
-
- Zusammenfassung:
- Installation:
- Scaffolding (Gerüst) für store config für ein Modul:
- Store Service API
- ngRx Actions
- action-types.ts
- Reducer
- Use state for deciding on what to show in the UI
- ngrx - specific custom operators for observables
- mapping functions with memory for optimizing
- Effects Module
- Reducers vs. Effects
- Debugging ngrx
- rgrx Entities
- rgrx Selectors
- NgRx Data
- changeDetection: ChangeDetectionStrategy.OnPush
-
- normal JavaScript
- RXJS
- Operators for Observables
- observable pipe(concatMap())
- observable pipe(mergeMap())
- observable pipe(exhaustMap())
- observable pipe(switchMap())
- concat Observables
- combineLatest(obs1$,obs2$)
- startWith
- withLatestFrom(obs2$)
- forkjoin(obs1$,obs2$,..)
- throttle and throttleTime
- debounceTime
- throttleTime vs debounceTime
- delay und delayWhen()
- toArray()
- Custom Operators from ngRx
- Observable von einer Eventquelle (clicks, tastatur)
- Error Handling
-
- spec - file
- nur einige Tests ausführen
- Objekte teilweise vergleichen
- Testbed:
- Router testing
- EventEmitters
- Test einfache Observables
- Testing innerhalb des "subscribe()" eines Observables
- Asynchrones Testen
- testen mit manipuliertem timer / clock
- Testing Forms
- Spy um Services zu mocken und von Service abhängige Components zu testen
- Testen von Services selbst
- echter Testserver:
- Test mit Dep-Injection und ngOnInit()
- Finding HTML-Elements in DOM
- benutze "nativeElement" wenn ein debugElement gefunden wurde.
- Directive - Objekte von debugElement abfragen
- test trigger events
- Code Coverage
- async, await and Promise
- testing Promises
-
- Getter, Setter:
- String to Number conversion:
- String interpolation with Varables:
- Array find
- JSON ist gleichzeitig gültiges TypeScript- Objekt
- filtering arrays (plain JavaScipt)
- Javascript spread operator / 3 dots operator
- Event von HTML-Elementen type-sicher verarbeiten:
- funktional programming
- getting a boolean from any type by double negating it
- Brower localstorage
- constructor vs inline declaration of member variables
- import as:
- interface vs type
- Index Signatures