Zrobiłem aplikację Angular2, jak opisano here. Ma dwa komponenty (A, B), które są importowane przez globalny numer app.module
. Mój pomysł polegał na tym, aby dołączyć wspólne moduły w app.module
, więc nie muszę zepsuć każdego modułu z nadmiarowym kodem. Chcę to zrobić na przykład z FormsModule
. Więc w app.module
mamDziedzicz importowanie z modułu nadrzędnego do modułu podrzędnego w Angular2
imports: [
UniversalModule,
CommonModule,
FormsModule,
AModule
RouterModule.forRoot([])
],
exports: [FormsModule]
Ale w module A mam wyjątek Can't bind to 'ngModel' since it isn't a known property of 'select'.
który wydaje spowodowanego brakującej FormsModule
. Działa to tylko wtedy, gdy importuję FormsModule
w każdym module potomnym również za pomocą imports: [FormsModule]
. Właśnie tego chcę uniknąć.
Według this question, próbowałem zaimportować AppModule
w module dziecko A. To nie działa i daje mi wyjątek Exception: Call to Node module failed with error: Error: Unexpected value 'undefined' imported by the module 'AModule'
Jak mogę odziedziczyć importu modułów podrzędnych? Też potrzebuję tego dla rur.
Jednym z celów jest NIE używanie łańcuchów o łańcuchach './../../../../../' do importowania moduły. Jakikolwiek sposób to zrobić? –
@DouglasGaskell W twoim 'tsconfig.json' pod' compilerOptions', a następnie 'paths 'możesz zadeklarować ścieżkę typu' "store": ["src/store.ts"] '. Zobacz [link] (https://www.typescriptlang.org/docs/handbook/module-resolution.html#path-mapping) –