例子:
export const API_URL = new InjectionToken("apiUrl");
在这个例子中,我们定义了一个名为API_URL的InjectionToken,并为它提供了一个字符串“apiUrl”。
例子:
@NgModule({
imports: [ HttpClientModule ],
providers: [
{ provide: API_URL, useValue: "http://example.com/api" }
]
})
export class AppModule { }
在这个例子中,我们在AppModule中提供了API_URL InjectionToken,并为它提供了一个值为“http://example.com/api”的参数。
例子:
export class MyComponent {
constructor(@Inject(API_URL) private apiUrl: string) {
}
// 使用API_URL注入的值
doSomething() {
console.log(this.apiUrl);
}
}
在这个例子中,我们在MyComponent组件的构造函数中使用@Inject装饰器注入了API_URL InjectionToken,并将其存储在类成员变量中。然后,在doSomething()方法中,我们可以使用这个值。
通过这种方法,我们可以使用带参数的InjectionToken在整个应用程序中传递并共享对象、字符串和其他值。