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)

One editor to rule them all

We will be processing a lot of user input within our application. Therefore, it's crucial to provide a pleasant authoring experience to our users. Users need to be able to edit project titles, descriptions, and task titles. Within the commenting system, which we are creating later in this chapter, users also need to be able to edit their comments. We could use regular text area input and work with dialogue boxes to edit those fields, but this seems too old-fashioned for a modern user interface. Native input fields are fantastic, but sometimes they don't provide an outstanding user experience. What we're looking for is a way to edit stuff in-place:

A screenshot of our in-place editor in action, showing the save and cancel buttons

To build our in-place editor, we're going to use the contenteditable API that will enable a user to modify...