Components are building blocks of any Angular application. Most commonly Angular components exist as custom markup elements in the template. However, that's not the only way to use components. You can also use them as if they are an attribute of an HTML element. Or you can also use them as the value of class attribute on HTML elements. Using Angular selectors you can decide how a component will be used in the template markup. To that end this article illustrates each type of usage with a simple example.