以下是使用轻量级注入令牌的步骤:
1. 创建轻量级注入令牌:
使用 InjectionToken 来创建轻量级注入令牌。你可以在模块或服务中定义该令牌。例如:
import { InjectionToken } from '@angular/core';
export const MY_CONFIG_TOKEN = new InjectionToken<string>('myConfigToken');
这里,MY_CONFIG_TOKEN 是一个轻量级注入令牌,它接受一个字符串参数作为可选的描述信息。
2. 使用注入令牌:
在需要注入这个令牌的服务或组件中,通过构造函数注入:
import { Injectable, Inject } from '@angular/core';
import { MY_CONFIG_TOKEN } from './path-to-your-token';
@Injectable({
providedIn: 'root'
})
export class MyService {
constructor(@Inject(MY_CONFIG_TOKEN) private myConfig: string) {
// Now myConfig contains the injected value
}
// Other methods...
}
这里,@Inject(MY_CONFIG_TOKEN) 将 MY_CONFIG_TOKEN 注入到 myConfig 变量中。
3. 在模块中提供值:
在应用的模块中,使用 useValue 属性为轻量级注入令牌提供具体的值:
import { NgModule } from '@angular/core';
import { MY_CONFIG_TOKEN } from './path-to-your-token';
@NgModule({
providers: [
{ provide: MY_CONFIG_TOKEN, useValue: 'your-config-value' }
]
})
export class MyModule { }
这样,当 MyService 被注入到其他组件或服务时,myConfig 将包含值 'your-config-value'。
轻量级注入令牌使得在 Angular 中注入常量或配置信息变得更加简单和清晰。这对于将配置信息从应用中解耦并使其易于维护非常有用。
转载请注明出处:http://www.pingtaimeng.com/article/detail/5001/Angular