在哪里在Angular中注册ActivatedRoute,Route,Http?

时间:2018-10-29 10:35:36

标签: angular

应在主要NgModule的哪个位置注册Angular的库:

ActivatedRoute, Route, Http in Angular

它不是服务,不是管道或指令,因此它们可以在提供程序或导入中注册:

@NgModule({
  imports: [// HERE ],
  providers: [// OR HERE]

});

对吗?

2 个答案:

答案 0 :(得分:1)

您使用imports导入模块。 您使用providers指定可以用于依赖项注入的服务。

例如:

如果要使用ActivatedRoute,则需要先import RouterModule

@NgModule({

  imports: [RouterModule.forRoot([{path: 'home', component: HomeComponent}]),

  providers: []

});

答案 1 :(得分:1)

//Use refelcting Api to get the declared fields and create the json schema using HashMap public static String getJsonSchema(Class clazz) throws IOException { Field[] fields = clazz.getDeclaredFields(); List<Map<String,String>> map=new ArrayList<Map<String,String>>(); for (Field field : fields) { HashMap<String, String> objMap=new HashMap<String, String>(); objMap.put("name", field.getName()); objMap.put("type", field.getType().getSimpleName()); objMap.put("format", ""); map.add(objMap); } ObjectMapper mapper = new ObjectMapper(); String json = mapper.writeValueAsString(map); return json; } ActivatedRouteRoute中的两个嵌入元素(应在 RouterModule 部分中导入,并且没有{{1 }}经常使用(,除非您在谈论协议;)),其中有一个imports 已弃用,现在由Http代替 ),也应在后面提到的内容旁边导入。