Reader small image

You're reading from  Angular Cookbook - Second Edition

Product typeBook
Published inDec 2023
Reading LevelBeginner
PublisherPackt
ISBN-139781803233444
Edition2nd Edition
Languages
Tools
Right arrow
Author (1)
Muhammad Ahsan Ayaz
Muhammad Ahsan Ayaz
author image
Muhammad Ahsan Ayaz

Muhammad Ahsan Ayaz is a Google developers expert in Angular, a software architect, and a head instructor of JavaScript at the School of Applied Technology. He loves helping the start-up ecosystem and product owners to bring their ideas to life using JavaScript, Angular, and web technologies. He has built several open-source projects that he maintains and he speaks at events, along with creating articles and video courses.
Read more about Muhammad Ahsan Ayaz

Right arrow

Using Angular DI tokens

In this recipe, you’ll learn how to create a basic DI token. We will create it for a regular TypeScript class, to be used as an Angular service using DI. We have a class named Jokes in our application, which is used in the AppComponent by manually creating a new instance of the class. This makes our code tightly coupled and hard to test, since the AppComponent class directly uses the Jokes class.

In other words, when running the tests for the App component, we now rely on the Jokes class, and if something changes in that class, our test will break. Since Angular is all about DI and services, we’ll use a DI token to use the Jokes class as an Angular service. We’ll use the InjectionToken method to create a DI token, and then the @Inject decorator to enable us to use the class in our service.

Getting ready

The app that we are going to work with resides in start/apps/chapter03/ng-di-token inside the cloned repository:

    ...
lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
Angular Cookbook - Second Edition
Published in: Dec 2023Publisher: PacktISBN-13: 9781803233444

Author (1)

author image
Muhammad Ahsan Ayaz

Muhammad Ahsan Ayaz is a Google developers expert in Angular, a software architect, and a head instructor of JavaScript at the School of Applied Technology. He loves helping the start-up ecosystem and product owners to bring their ideas to life using JavaScript, Angular, and web technologies. He has built several open-source projects that he maintains and he speaks at events, along with creating articles and video courses.
Read more about Muhammad Ahsan Ayaz