Meg*_*ron 45 typescript angularjs-ng-model angular-cli angular
注意:我是Angular的新手,所以请原谅任何新来的愚蠢.
细节
问题
compiler.es5.js:1689未捕获错误:模块'ProjectsModule'导入的意外指令'ProjectsListComponent'.请添加@NgModule注释.
应用模块
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { AngularFireModule } from 'angularfire2';
import { AngularFireDatabaseModule } from 'angularfire2/database';
import { AngularFireAuthModule } from 'angularfire2/auth';
import { environment } from '../environments/environment';
import { ProjectsModule } from './projects/projects.module';
import { HttpModule } from '@angular/http';
@NgModule({
imports: [
BrowserModule,
HttpModule,
ProjectsModule,
AngularFireModule.initializeApp(environment.firebase, 'AngularFireTestOne'), // imports firebase/app needed for everything
AngularFireDatabaseModule, // imports firebase/database, only needed for database features
AngularFireAuthModule // imports firebase/auth, only needed for auth features
],
declarations: [AppComponent],
bootstrap: [AppComponent]
})
export class AppModule { }Run Code Online (Sandbox Code Playgroud)
项目模块
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { ProjectsListComponent } from './projects-list.component';
import { RouterModule } from '@angular/router';
@NgModule({
declarations: [
ProjectsListComponent
],
imports: [
BrowserModule,
ProjectsListComponent,
RouterModule.forChild([
{ path: 'projects', component: ProjectsListComponent }
])
]
})
export class ProjectsModule { }Run Code Online (Sandbox Code Playgroud)
我用来设置模块的过程与我使用Angular 2时没有任何不同.但是,在Angular Cli,firebase和angular fire之间存在兼容性问题之后,我决定获取最新的一切早上.
任何对这一个的帮助都将受到广泛的赞赏,因为我已经了解了这一切,因为我已经碰到了一堵砖墙.
谢谢.
Pie*_*Duc 42
问题是ProjectsListComponent你的进口ProjectsModule.您不应该导入它,而是将其添加到导出数组中,如果您想在它之外使用它ProjectsModule.
其他问题是您的项目路线.您应该将这些添加到可导出变量,否则它不是AOT兼容的.而你应该随时随地进口BrowserModule其他地方AppModule.使用它CommonModule来访问*ngIf, *ngFor...etc指令:
@NgModule({
declarations: [
ProjectsListComponent
],
imports: [
CommonModule,
RouterModule.forChild(ProjectRoutes)
],
exports: [
ProjectsListComponent
]
})
export class ProjectsModule {}
Run Code Online (Sandbox Code Playgroud)
project.routes.ts
export const ProjectRoutes: Routes = [
{ path: 'projects', component: ProjectsListComponent }
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
123557 次 |
| 最近记录: |