0

我正在尝试将字符串参数从组件传递给服务构造函数。在静态值的情况下很容易:

    @Component({
      selector: 'app-board',
      templateUrl: './board.component.html',
      styleUrls: ['./board.component.css'],
      providers: [UsersDetailProviderService,
                  {provide: 'boardId', useValue: 'whatever'} ]
    })

并为我服务:

    constructor(private afs: AngularFirestore,
                @Inject('boardId') @Optional() public boardId?: string) {
        console.log(boardId);
    }

我在控制台中得到了我的“任何东西”。但我真正想通过的是真正的董事会ID。在组件中,我使用 activateRoute 将板 id 获取到局部变量。

this.boardId = this.activatedRoute.snapshot.paramMap.get('id');

如何将此 id 传递给服务?

@edit我可以通过调用以板ID作为参数的服务方法来实现我的目标,然后初始化服务数据。但我认为这不是一个好方法吗?

4

0 回答 0