我需要添加一个'外部'对象以角度2进行依赖注入。 '外部'意味着它没有@Injectable注释,因为它来自外部库。
所以我想,我可以将此依赖项添加到@Component注释中的angular 2提供者列表中,如下所示:
@Component(
selector: "app-component",
templateUrl: "app_component.html",
directives: const [AddButton, SettingsButton],
providers: const [const Provider(EventBus, useValue: new EventBus())]
)
问题是这个列表必须是一个const表达式。因此,提供者必须是const和`new EventBus()'通过非const表达式不支持。
搜索文档并没有产生结果。 我该怎么做?
答案 0 :(得分:1)
您可以在Angular2转换器部分的<h3>Post Your Comment</h3>
<% form_for([@book, Comment.new]) do |f| %>
<p><%= f.label :author %></p>
<p><%= f.text_field :author %></p>
<p><%= f.label :text, 'Comment' %></p>
<p><%= f.text_area :text %></p>
<%= f.submit 'Save' %>
<% end %>
中注册此类:
pubspec.yaml
上面的示例显示如何从Angulars DI提供的transformers:
- sass
- angular2:
platform_directives:
- 'package:angular2/common.dart#COMMON_DIRECTIVES'
platform_pipes:
- 'package:angular2/common.dart#COMMON_PIPES'
entry_points:
- web/index.dart
resolved_identifiers:
BrowserClient: 'package:http/browser_client.dart'
BaseClient: 'package:http/http.dart'
包中制作BrowserClient
和BaseClient
然后你可以像
那样提供它<击> 撞击>
<击>http
击> <击>或 击>
@Component(
selector: "app-component",
templateUrl: "app_component.html",
directives: const [AddButton, SettingsButton],
providers: const [EventBus]
)