【发布时间】:2017-11-04 07:13:55
【问题描述】:
通过这个todo tutorial,它有以下内容:
import {TodoDataService} from './todo-data.service';
@Component({
// ...
providers: [TodoDataService]
})
constructor(private todoDataService: TodoDataService) {
}
IIUC 我们必须在 providers 数组中声明 TodoDataService。这似乎是多余的。 Angular DI 能否读取组件生成的元数据并使用构造函数注入自动注入TodoDataService?
更新
Angular 已经在some extent now 上实现了这一点。我要求他们也删除providedIn:root,他们说他们在路线图上有一些东西。
【问题讨论】:
-
您需要告诉它应该为该令牌注入什么;在模块的提供者数组或组件的提供者数组中。
-
Spring 在 4.3 中使其自动运行。我想知道 Angular 是否会更简单地默认为类似类型的机制,如果需要更多细节/自定义,则允许进一步自定义:spring.io/blog/2016/03/04/…
-
还打开了 Angular 问题:github.com/angular/angular/issues/17182
-
是的,它可以读取。不,它不应该读。无法控制注入的内容会给开发人员带来非常糟糕的体验。有分层注入器。有多种提供者类型。这将只是一场噩梦。
-
为什么它适用于 Spring?
标签: angular typescript angular-decorator