Angular中的注入令牌
创始人
2024-10-31 11:30:45
0

在Angular中,可以使用注入令牌来指定依赖项的提供者。以下是一个包含代码示例的解决方法:

  1. 首先,创建一个注入令牌。可以使用InjectionToken类来创建注入令牌。注入令牌是一个唯一的标识符,用于标识依赖项。
import { InjectionToken } from '@angular/core';

export const MY_TOKEN = new InjectionToken('myToken');
  1. 在提供者中使用注入令牌。
import { Injectable } from '@angular/core';
import { MY_TOKEN } from './my-token';

@Injectable()
export class MyService {
  constructor(@Inject(MY_TOKEN) private myToken: string) {
    console.log(myToken);
  }
}
  1. 在模块的providers数组中提供注入令牌和对应的依赖项。
import { NgModule } from '@angular/core';
import { MY_TOKEN } from './my-token';
import { MyService } from './my-service';

@NgModule({
  providers: [
    { provide: MY_TOKEN, useValue: 'My Value' },
    MyService
  ]
})
export class MyModule { }

在这个例子中,我们创建了一个注入令牌MY_TOKEN,然后在MyService中使用了该注入令牌。在MyModule中,我们将MY_TOKEN提供给MyService,并设置其值为My Value。这样,当MyService被注入时,myToken参数将被设置为My Value

需要注意的是,注入令牌和提供者必须在同一个模块中定义。如果注入令牌和提供者在不同的模块中,需要使用forRoot()方法来传递注入令牌。

import { NgModule } from '@angular/core';
import { MY_TOKEN } from './my-token';
import { MyService } from './my-service';

@NgModule({})
export class MyModule {
  static forRoot(myToken: string): ModuleWithProviders {
    return {
      ngModule: MyModule,
      providers: [
        { provide: MY_TOKEN, useValue: myToken },
        MyService
      ]
    };
  }
}

然后,在根模块中使用forRoot()方法来传递注入令牌。

@NgModule({
  imports: [
    MyModule.forRoot('My Value')
  ]
})
export class AppModule { }

这样,MyService将使用根模块中提供的注入令牌值。

相关内容

热门资讯

揭秘几款!微乐微信自建房辅助工... 揭秘几款!微乐微信自建房辅助工具插件,微乐小程序免费黑科技(开挂自建房)app1、进入游戏-大厅左侧...
今日头条!微乐自建房辅助工具神... 今日头条!微乐自建房辅助工具神器,微乐家乡麻将自建房辅助app(开挂自建房)工具1、首先打开微乐家乡...
玩家必备攻略!微乐自建房辅助工... 玩家必备攻略!微乐自建房辅助工具免费app,微乐小程序免费黑科技(开挂自建房)脚本1、许多玩家不知道...
一分钟了解!微乐小程序自建房辅... 您好,微乐小程序自建房辅助工具插件这款游戏可以开挂的,确实是有挂的,需要了解加去威信【1367043...
玩家必备攻略!微乐自建房辅助工... 玩家必备攻略!微乐自建房辅助工具,微乐家乡麻将自建房辅助app(开挂自建房)app1、微乐家乡麻将自...
分享认知!微乐微信自建房辅助工... 分享认知!微乐微信自建房辅助工具插件,微乐自建房脚本免费入口(开挂自建房)脚本1、每一步都需要思考,...
三分钟了解!微乐自建房辅助工具... 三分钟了解!微乐自建房辅助工具挂,微乐小程序免费黑科技(开挂自建房)技巧1、微乐自建房辅助工具挂透视...
一分钟快速了解!微乐小程序麻将... 一分钟快速了解!微乐小程序麻将自建房辅助工具插件,微乐自建房脚本免费入口(开挂自建房)教程1、这是跨...
专业讨论!微乐自建房辅助工具神... 专业讨论!微乐自建房辅助工具神器,微乐小程序免费黑科技(开挂自建房)脚本1、微乐自建房辅助工具神器模...
大家学习交流!微乐家乡麻将自建... 大家学习交流!微乐家乡麻将自建房辅助app,微乐家乡麻将自建房辅助app(开挂自建房)教程1、该软件...