Angular 角度错误:请添加@NgModule注释
我是Angular的新手,我正在尝试编写一个简单的模块化应用程序。但我得到了以下错误: 未捕获错误:由导入的意外指令“SomeComponent” 模块“SomeModule”。请添加@NgModule注释 基本上,我不想导入Angular 角度错误:请添加@NgModule注释,angular,Angular,我是Angular的新手,我正在尝试编写一个简单的模块化应用程序。但我得到了以下错误: 未捕获错误:由导入的意外指令“SomeComponent” 模块“SomeModule”。请添加@NgModule注释 基本上,我不想导入app.module.ts中的所有服务和组件,我想模块化代码,但失败了 这是app.module.ts @NgModule({ declarations: [ AppComponent, HomeComponent ], imports: [
app.module.ts
中的所有服务和组件,我想模块化代码,但失败了
这是app.module.ts
@NgModule({
declarations: [
AppComponent,
HomeComponent
],
imports: [
BrowserModule,
RouterModule.forRoot(appRoutes),
HttpClientModule,
ReactiveFormsModule,
SomeModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {
}
这是嵌套模块:
@NgModule({
imports: [
CommonModule,
SomeComponent
],
providers: [SomeService],
declarations: [],
exports: [SomeComponent]
})
export class SomeModule {
}
这是嵌套组件:
@Component({
selector: 'app-index',
templateUrl: './some.component.html',
styleUrls: ['./some.component.css']
})
export class SomeComponent implements OnInit {
somes: Array<ISome>;
constructor(private http: HttpClient, private service: SomeService) {}
ngOnInit() {
this.getSomes();
}
getSomes() {
this.service.getSomes().subscribe(res => {
this.somes = res;
});
}
}
@组件({
选择器:“应用程序索引”,
templateUrl:“./some.component.html”,
样式URL:['./some.component.css']
})
导出类SomeComponent实现OnInit{
somes:数组;
构造函数(私有http:HttpClient,私有服务:SomeService){}
恩戈尼尼特(){
这个。getSomes();
}
getSomes(){
this.service.getSomes().subscribe(res=>{
this.somes=res;
});
}
}
您必须在嵌套模块中声明该组件
@NgModule({
imports: [
CommonModule,
],
providers: [SomeService],
declarations: [SomeComponent],
exports: [SomeComponent]
})
export class SomeModule {
}
在嵌套模块中尝试此操作
@NgModule({
imports: [
CommonModule,
],
providers: [SomeService],
declarations: [SomeComponent],
exports: [SomeComponent]
})
export class SomeModule {
}
您正试图在SomeModule
中“导入”组件
imports: [
CommonModule,
SomeComponent
],
您导入模块并声明组件,这正是错误消息告诉您的——您尝试导入指令SomeComponent
模块“SomeModule”导入了意外的指令“SomeComponent”
将SomeComponent
从imports
移动到declarations
imports: [
CommonModule,
],
providers: [SomeService],
declarations: [
SomeComponent,
],
将Somecomponent移动到声明部分
NgModule({
imports: [
CommonModule
],
providers: [SomeService],
declarations: [SomeComponent]
})
export class SomeModule {
}
我也面临同样的问题 我创建了一个
管道
,并将其放入模块
中,以便多个组件可以访问它
我做错了什么?
@NgModule({
declarations: [
CustomDatePipe, // declarating pipe class instead of importing pipe module
]
})
export class AppModule { }
如何解决这个问题?
在AppModule
中导入管道模块
,即
@NgModule({
imports: [
CustomDateModule,
]
})
export class AppModule { }
我真的看不出被接受的答案和这个有什么区别。此代码也必须有效