Book Image

Mastering Angular Components - Second Edition

By : Gion Kunz
Book Image

Mastering Angular Components - Second Edition

By: Gion Kunz

Overview of this book

Mastering Angular Components will help you learn how to invent, build, and manage shared and reusable components for your web projects. Angular components are an integral part of any Angular app and are responsible for performing specific tasks in controlling the user interface. Complete with detailed explanations of essential concepts and practical examples, the book begins by helping you build basic layout components, along with developing a fully functional task-management application using Angular. You’ll then learn how to create layout components and build clean data and state architecture for your application. The book will even help you understand component-based routing and create components that render Scalable Vector Graphics (SVG). Toward the concluding chapters, you’ll be able to visualize data using the third-party library Chartist and create a plugin architecture using Angular components. By the end of this book, you will have mastered the component-based architecture in Angular and have the skills you need to build modern and clean user interfaces.
Table of Contents (12 chapters)

Using TestBed for running Angular tests

Angular comes with another very important testing utility. So far, we have only tested the component class of our components. However, as soon as we need to test components and their behaviors in our application, a few more things will be involved:

  • Testing the view of components: It's sometimes required that we test the rendered view of components. With all of the bindings in our view, dynamic instantiation using template directives and content projection, it can be hard to write deterministic tests.
  • Testing change detection: As soon as we update our model in our component class, we will want to test the updates that are performed via change detection. This involves the whole change detection behavior of our components.
  • User interaction: Our component templates probably contain a set of event bindings, which trigger some behaviors...