typescript - Angular-CLI. Hogyan lehet új modult regisztrálni a jelenlegi modulban?
Generáltam egy modulokat:
ng generate module myTestModule
installing module
create src/app/my-test-module/my-test-module.module.ts
ng generate module myTestModule2
installing module
create src/app/my-test-module2/my-test-module2.module.ts
Van egy szokásos fájlom, amely az app.module.ts fő modult írja le. Hogyan tudnám regisztrálni a my-test-module.module.ts modult az app.module.ts-ben, és a my-test-module2.module.ts modult a my-test-module.module.ts-ben?
További részletek a válaszok javításához
ng generate --help
module <name> <options...>
aliases: m
--spec (Boolean) Specifies if a spec file is generated.
--flat (Boolean) Flag to indicate if a dir is created.
--routing (Boolean) (Default: false) Specifies if a routing module file should be generated.
--app (String) Specifies app name to use.
aliases: -a <value>
itt nincs -m vagy --module, ahogy a wikiben fel van tüntetve
Az én Angular CLI-m:
ng -v
@angular/cli: 1.0.1
node: 7.4.0
@angular/common: 4.1.3
@angular/compiler: 4.1.3
@angular/core: 4.1.3
@angular/forms: 4.1.3
@angular/http: 4.1.3
@angular/platform-browser: 4.1.3
@angular/platform-browser-dynamic: 4.1.3
@angular/router: 4.1.3
@angular/cli: 1.0.1
@angular/compiler-cli: 4.1.3
Néhány további részlet a válaszok javításához v2 Frissítettem a angular-cli-t a v1.2.1 verzióra. Használhatom az -m alias-t
module <name> <options...>
aliases: m
--spec (Boolean) Specifies if a spec file is generated.
--flat (Boolean) Flag to indicate if a dir is created.
--routing (Boolean) (Default: false) Specifies if a routing module file should be generated.
--app (String) Specifies app name to use.
aliases: -a <value>
--module (String) Specifies where the module should be imported.
aliases: -m <value>
Szóval próbálkozom
ng g m MyTestModuleModule34 -m AppModule
installing module
Specified module does not exist
De a megadott modul megtalálható a src/app/app-module.ts fájlban
Válasz #1
Amikor létrehozod a modult, használhatod a -m kapcsolót, és megadhatod annak a modulnak a nevét, amelybe regisztrálni szeretnéd. A parancssori felület ezután regisztrálja a modult helyetted.
Válasz #2
Nem vagyok biztos benne, hogy miért nem működik a -m, de manuálisan is importálhatod őket, ez egész pontosan 2 másodpercet vesz igénybe.
app.module.ts
@NgModule({
imports: [
MyTestModule
]
})
my-test-module.module.ts
@NgModule({
imports: [
MyTestModule2 // This should be named MyTest2Module for naming consistancy throughout your app. i.e. all module names should end with the word module. See the Angular Style Guide for more info.
]
})
Mellékesen, nincs ok arra, hogy a Module-t kétszer szerepeltessük bármelyik névben. Ehelyett egyszerűen használd a my-test.module.ts és a my-test-two.module.ts fájlneveket.
