首页 新闻 会员 周边 捐助

angular 依赖注入问题:使用 inject(type) 时什么情况下需要用 provider

0
悬赏园豆:30 [已解决问题] 解决于 2024-12-17 12:24

比如下面的注入代码

private readonly _notify = inject(NotifyService);
private readonly _noAnimation = inject(NzNoAnimationDirective;

在 providers 中添加了 NzNoAnimationDirective,却没有添加 NotifyService,但可以正常工作

providers: [NzNoAnimationDirective]
dudu的主页 dudu | 高人七级 | 园豆:29213
提问于:2024-12-17 10:07
< >
分享
最佳答案
0

NotifyService 可以从 root provider 注入,所以不需要在 providers 中声明

Injectable({ providedIn: 'root' })
export class NotifyService { }

如果从 providers 中去掉 NzNoAnimationDirective,运行会报错

Uncaught NullInjectorError: R3InjectorError(Standalone[v])[t -> t -> t -> t]: 
dudu | 高人七级 |园豆:29213 | 2024-12-17 12:24
dudu | 园豆:29213 (高人七级) | 2024-12-17 19:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册