Become A Ninja With Angular (2023-06-14)

his ebook helps you get the philosophy of Angular (currently 16.1.3), the new tools (like ES2015, TypeScript, SystemJS,

1,490 413 969KB

English Pages 327 Year 2023

Report DMCA / Copyright

DOWNLOAD EPUB FILE

Table of contents :
1. Introduction
2. A gentle introduction to ECMAScript 2015+

2.1. Transpilers
2.2. let
2.3. Constants
2.4. Shorthands in object creation
2.5. Destructuring assignment
2.6. Default parameters and values
2.7. Rest operator
2.8. Classes
2.9. Promises
2.10. Arrow functions
2.11. Async/await
2.12. Sets and Maps
2.13. Template literals
2.14. Modules
2.15. Conclusion

3. Going further than ES2015+

3.1. Dynamic, static and optional types
3.2. Enters TypeScript
3.3. A practical example with DI

4. Diving into TypeScript

4.1. Types as in TypeScript
4.2. Enums
4.3. Return types
4.4. Interfaces
4.5. Optional arguments
4.6. Functions as property
4.7. Classes
4.8. Working with other libraries
4.9. Decorators

5. Advanced TypeScript

5.1. readonly
5.2. keyof
5.3. Mapped type
5.4. Union types and type guards

6. The wonderful land of Web Components

6.1. A brave new world
6.2. Custom elements
6.3. Shadow DOM
6.4. Template
6.5. Frameworks on top of Web Components

7. Grasping Angular’s philosophy
8. From zero to something

8.1. Node.js and NPM
8.2. Angular CLI
8.3. Application structure
8.4. Our first standalone component
8.5. Bootstrapping the app

9. The templating syntax

9.1. Interpolation
9.2. Using other components in our templates
9.3. Property binding
9.4. Events
9.5. Expressions vs statements
9.6. Local variables
9.7. Structural directives
9.8. Other template directives
9.9. Summary

10. Building components and directives

10.1. Introduction
10.2. Directives
10.3. Components

11. Styling components and encapsulation

11.1. Shadow DOM strategy
11.2. Emulated strategy
11.3. None strategy
11.4. Styling the host

12. Pipes

12.1. Pied piper
12.2. json
12.3. slice
12.4. keyvalue
12.5. uppercase
12.6. lowercase
12.7. titlecase
12.8. number
12.9. percent
12.10. currency
12.11. date
12.12. async
12.13. A pipe in your code
12.14. Creating your own pipes

13. Dependency injection

13.1. DI yourself
13.2. Easy to develop
13.3. Easy to configure
13.4. Other types of provider
13.5. Hierarchical injectors
13.6. DI without types
13.7. inject()
13.8. Services provided by the framework

14. Reactive Programming

14.1. Call me maybe
14.2. General principles
14.3. RxJS
14.4. Reactive programming in Angular

15. Testing your app

15.1. The problem with troubleshooting is that trouble shoots back
15.2. Unit tests
15.3. Fake dependencies
15.4. Testing components
15.5. Testing with fake templates, providers…
15.6. Simpler, cleaner unit tests with ngx-speculoos
15.7. End-to-end tests (e2e)

16. Send and receive data through HTTP

16.1. Getting data (provideHttpClient)
16.2. Transforming data
16.3. Advanced options
16.4. Interceptors
16.5. Context
16.6. Tests

17. Router

17.1. En route (provideRouter)
17.2. Navigation
17.3. Redirects
17.4. Matching strategy
17.5. Hierarchical and empty-path routes
17.6. Guards
17.7. Resolvers
17.8. Router events
17.9. Parameters and data
17.10. Bind parameters and data to component inputs
17.11. Lazy loading

18. Forms

18.1. Forms, dear forms
18.2. Template-driven
18.3. Code-driven
18.4. Adding some validation
18.5. Errors and submission
18.6. Add some style
18.7. Creating a custom validator
18.8. Grouping fields
18.9. Reacting to changes
18.10. Updating on blur or on submit only
18.11. FormArray and FormRecord
18.12. Strictly typed forms
18.13. Super simple validation error messages with ngx-valdemort
18.14. Going further: define custom form inputs with ControlValueAccessor
18.15. Summary

19. Zones and the Angular magic

19.1. AngularJS 1.x and the digest cycle
19.2. Angular and zones

20. Angular compilation: Just in Time vs Ahead of Time

20.1. Code generation
20.2. Ahead of Time compilation

21. Advanced observables

21.1. Subscribe, unsubscribe and async pipe
21.2. Leveraging operators
21.3. Building your own Observable
21.4. Managing state with stores (NgRx, NGXS, Akita and friends)
21.5. Conclusion

22. Advanced components and directives

22.1. View queries: ViewChild
22.2. Content: ng-content
22.3. Content queries: ContentChild
22.4. Conditional and contextual content projection: ng-template and ngTemplateOutlet
22.5. Host listener
22.6. Host binding

23. Angular modules

23.1. A compilation unit
23.2. Module composition
23.3. Functional, routed modules

24. Internationalization

24.1. The locale
24.2. Default currency
24.3. Translating text
24.4. Process and tooling
24.5. Translating messages in the code
24.6. Pluralization
24.7. Best practices

25. Performances

25.1. First load
25.2. Reload
25.3. Profiling
25.4. Runtime performances
25.5. NgZone

26. Signals

26.1. The reasons behind Signals
26.2. Signals API
26.3. Signals, components, and change detection
26.4. Sharing a signal between components
26.5. Memory leaks
26.6. Signals and RxJS interoperability
26.7. Signal-based components

27. Going to production

27.1. Environments and configurations
27.2. strictTemplates
27.3. Package your application
27.4. Server configuration
27.5. Conclusion

28. This is the end

Become A Ninja With Angular (2023-06-14)

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
Recommend Papers