Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 省道手动注射_Angularjs_Dependency Injection_Dart_Angular Dart - Fatal编程技术网

Angularjs 省道手动注射

Angularjs 省道手动注射,angularjs,dependency-injection,dart,angular-dart,Angularjs,Dependency Injection,Dart,Angular Dart,如何在angular dart中手动注入实例?这相当于angularjs中的以下内容: var myInjector = angular.injector(["ng"]); var $http = myInjector.get("$http"); 组件内部的代码示例 @NgComponent( 选择器:“额定值”, publishAs:'ctrl') 分级组件{ 注入器(u注入器),; 额定配置_配置; 额定部件(此喷油器){ _config=_injector.get(RatingConfi

如何在angular dart中手动注入实例?这相当于angularjs中的以下内容:

var myInjector = angular.injector(["ng"]);
var $http = myInjector.get("$http");

组件内部的代码示例

@NgComponent(
选择器:“额定值”,
publishAs:'ctrl')
分级组件{
注入器(u注入器),;
额定配置_配置;
额定部件(此喷油器){
_config=_injector.get(RatingConfig);
//或
_config=injectByName(“RatingConfig”);
}
void injectByName(字符串类型名){
_喷油器.类型.takeWhile((e型){
if(例如toString()==类型名){
_配置=_injector.get(e);
返回false;
}
返回true;
});    
}
}

使用_injector.get(RatingConfig)的方法将起作用


例如,筛选器代码在注入器上显式调用“get”以获取筛选器的实例:

如果您需要手动注入实例,因为您的实例位于main()方法中,则可以执行以下操作:

class MyAppModule extends Module {
  MyAppModule() {
    type(MyService);
  }
}

main() {
  Injector injector = applicationFactory().addModule(new MyAppModule()).run();
  MyService myService = injector.get(MyService);
}