What this book covers
Chapter 1, Component-Based User Interfaces, looks at a bit of the history of UI development and provides a brief introduction to component-based user interfaces in general. We will see how Angular 2 handles this concept.
Chapter 2, Ready, Set, Go!, gets the reader started on their journey toward building an Angular 2 component-based application. It covers the basic elements of structuring an application with components.
Chapter 3, Dealing with Data and State, focuses on how to build a clean data and state architecture into our application. We'll learn about reactive programming using RxJS, the pure component, the container component, and many more concepts, and tools that can be used to combat application state mess.
Chapter 4, Thinking in Projects, focuses on the structure of the user interface and its basic components. Readers will compose an application by organizing an application layout into components, establishing the composition of components, and creating a reusable tab component to structure the application interface. Readers will also build a re-usable editor component and a commenting system.
Chapter 5, Component-Based Routing, explains how components react to routing and enables readers to add simple routing to existing components in the task management application. Readers will also work on the login process and gain an understanding of how to protect components using the router.
Chapter 6, Keeping Up with Activities, covers the creation of components that will visualize activity streams on both the project and task levels.
Chapter 7, Components for User Experience, guides readers on creating many small reusable components that will have a great effect on the overall user experience of the task management application. Benefits include the in-place editing of text fields, infinite scrolling, popup notifications, and drag-and-drop support.
Chapter 8, Time Will Tell, focuses on creating time-tracking components that help estimate time on a project and task level, but also for users to log the time they spend on tasks.
Chapter 9, Spaceship Dashboard, focuses on creating components to visualize data in the task management application using the third-party library Chartist.
Chapter 10, Putting Things to the Test, covers some basic approaches to testing Angular components. We will look at the options for mocking/overriding specific parts of a component for testing.