anglejs – 角度2通过服务构造函数的参数
发布时间:2020-12-17 07:44:52 所属栏目:安全 来源:网络整理
导读:我们假设我有这个Angular 2服务: @Injectable()class Demo { constructor(private instanceSpecificString: string) { }} 请注意,它的构造函数接受一个特定于实例的字符串.我的意思是我想多次实例化这个服务,每次实例化时,我想根据服务被实例化的上下文传递
我们假设我有这个Angular 2服务:
@Injectable() class Demo { constructor(private instanceSpecificString: string) { } } 请注意,它的构造函数接受一个特定于实例的字符串.我的意思是我想多次实例化这个服务,每次实例化时,我想根据服务被实例化的上下文传递一个不同的字符串. 我怎么做? 附:使用字符串作为示例,但该参数可以容易地是类型号,或布尔型甚至某种配置对象.
传递给您的服务的值将由实例化的注射器决定.您可能可以在其中一个组件定义中执行此操作:
@Component({ ... providers: [ provide(string,{useValue: "someSpecificValue"}) ] }) 但是,这是一个问题,您正在为字符串令牌定义提供程序,并可能导致可维护性问题. 为您的服务定义一些配置模型可能是更好的模式: class DemoConfig { instanceSpecificString: string; } 然后,您可以创建一个传递给您的服务的实例. let config = { instanceSpecificString: "someSpecificValue" } @Component({ ... providers: [ provide(DemoConfig,{useExisting: config}) ] }) 希望这是有帮助的.我没有尝试过这个;我在应用程序中使用的服务是单身人士.这是我使用的参考: https://angular.io/docs/ts/latest/api/core/index/provide-function.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用Scala Dispatch Library禁用SSL
- MySQL高可用数据库内核深度优化的四重定制
- playframework – 在docker容器中播放框架自动加载
- 在Unix域套接字而不是网络上运行memcached是否有任何缺点(假
- mvn in bash脚本if语句
- scala – 如何在foreachPartition中使用SQLContext和SparkC
- scala – playframework – IOException无法分配内存
- VIM 打开文件跳转到底部
- 基于 bootstrap 的数据展示--bootgrid 样式修改。
- angular1.x 中重要指令介绍($eval,$parse和$compile)