应在主要NgModule
的哪个位置注册Angular的库:
ActivatedRoute, Route, Http in Angular
它不是服务,不是管道或指令,因此它们可以在提供程序或导入中注册:
@NgModule({
imports: [// HERE ],
providers: [// OR HERE]
});
对吗?
答案 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;
}
和ActivatedRoute
是Route
中的两个嵌入元素(应在 RouterModule
部分中导入,并且没有{{1 }}经常使用(,除非您在谈论协议;)),其中有一个imports
( 已弃用,现在由Http
代替 ),也应在后面提到的内容旁边导入。