Outils pour utilisateurs

Outils du site


lang:angular:cli

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
lang:angular:cli [2020/05/18 23:16] – [Ajouter] : Précision sur l'ordre du routage rootlang:angular:cli [2024/10/20 00:34] (Version actuelle) – [Mise à jour] : fix typo root
Ligne 6: Ligne 6:
  
   ng build   ng build
 +
 +====Mise à jour====
 +
 +  npm install -g npm@latest
 +  npm --version
 +  npm install -g @angular/cli
 +  ng --version
 +  
  
 ====Gestion des paquets==== ====Gestion des paquets====
Ligne 15: Ligne 23:
   npm install @angular/core@9.1.4 @angular/animations@9.1.4 @angular/common@9.1.4 @angular/forms@9.1.4 @angular/platform-browser@9.1.4 @angular/router@9.1.4 @angular/platform-browser-dynamic@9.1.4 @angular/compiler@9.1.4 @angular/compiler-cli@9.1.4 @angular/language-service@9.1.4   npm install @angular/core@9.1.4 @angular/animations@9.1.4 @angular/common@9.1.4 @angular/forms@9.1.4 @angular/platform-browser@9.1.4 @angular/router@9.1.4 @angular/platform-browser-dynamic@9.1.4 @angular/compiler@9.1.4 @angular/compiler-cli@9.1.4 @angular/language-service@9.1.4
  
-===Mettre à jour un projet=== 
- 
-  npm i -g npm-check-updates 
-  ncu -u 
-  npm install 
  
 ===Gestion des erreurs de mise à jour=== ===Gestion des erreurs de mise à jour===
Ligne 32: Ligne 35:
 ====Ajouter==== ====Ajouter====
  
-===Component (page web)===+====Component (page web)====
  
   ng generate component modules/general/contact --module=app   ng generate component modules/general/contact --module=app
 +
 +Ce component pourra être appelé via
 +
 +  <app-contact></app-contact>
 +====Module====
 +
 +Un module est un ensemble de components et d'autres modules.
  
 ===Routage=== ===Routage===
 +
 +Définir la jonction entre URL et component.
  
   ng generate module app-routing --flat --module=app   ng generate module app-routing --flat --module=app
 +
 +''%%--flat%%'' : ''When true, creates the new files at the top level of the current project root.''
  
   * Modifier le fichier ''app-routing.module.ts'' :   * Modifier le fichier ''app-routing.module.ts'' :
Ligne 62: Ligne 76:
 Dans ''routes'', l'ordre est important. Si ''**'' est mis au début, tous les liens seront redirigés vers ''not-found''. Dans ''routes'', l'ordre est important. Si ''**'' est mis au début, tous les liens seront redirigés vers ''not-found''.
 </WRAP> </WRAP>
- 
  
   * Ajouter dans le fichier ''app.component.html'' :   * Ajouter dans le fichier ''app.component.html'' :
Ligne 85: Ligne 98:
 </code> </code>
  
-=====Tests=====+===Lazy load===
  
-====Exécution====+Chargement en différé d'un component.
  
-<code bash+  ng generate module modules/general/contact --routing  --module=app 
-npm run lint +  ng generate component modules/general/contact/mailing --module=app 
-npm run test + 
-npm run e2e+  * Ajouter dans le fichier ''app.component.html''
 + 
 +<code xml
 +<router-outlet></router-outlet>
 </code> </code>
 +
 +  * Dans le fichier ''app.module.ts''
 +
 +Enlever manuellement le nouveau module :
 +
 +<code diff>
 +-import { ContactComponent } from './modules/general/contact/contact.component';
 +-import { ContactModule } from './modules/general/contact/contact.module';
 + ...
 + @NgModule({
 +   declarations: [
 + ...
 +-    ContactComponent,
 + ...
 +   imports: [
 + ...
 +-    ContactModule,
 +</code>
 +
 +  * Dans le fichier ''app-routing.module.ts''
 +
 +Le chargement du component ne se fait plus au niveau global de l'application.
 +
 +<code diff>
 +-import { ContactComponent } from './modules/general/contact/contact.component';
 + 
 + const routes: Routes = [
 +-  { path: 'contact', component: ContactComponent },
 ++    path: 'contact',
 ++    loadChildren: () => import('./modules/general/contact/contact.module')
 ++      .then(mod => mod.ContactModule)
 ++  },
 +</code>
 +
 +  * Dans le fichier ''modules/general/contact/contact.module.ts''
 +
 +Le chargement du component se fait lors du chargement du module contact.
 +
 +<code diff>
 ++import { ContactComponent } from './contact.component';
 + ...
 + @NgModule({
 +-   declarations: [],
 ++   declarations: [
 ++     ContactComponent
 ++   ],
 +   imports: [
 +     CommonModule,
 +     ContactRoutingModule
 +   ],
 ++   exports: [
 ++     ContactComponent
 ++   ]
 + })
 +</code>
 +
 +  * Dans le fichier ''modules/general/contact/contact-routing.module.ts''
 +
 +Remplacer ''const routes: Routes = [];'' par :
 +
 +<code typescript>
 +import { ContactComponent } from './contact.component';
 + 
 +const routes: Routes = [
 +  { path: '', component: ContactComponent },
 +];
 +</code>
 +
 +[[https://www.ganatan.com/tutorials/lazy-loading-avec-angular|Lazy loading avec Angular 9]] {{ :lang:angular:cli:3-implementer_le_lazy_loading_avec_angular_2020-05-09_9_30_19_am_.html | Archive du 03/05/2020 le 09/05/2020}}
 +
lang/angular/cli.1589836587.txt.gz · Dernière modification : 2020/05/18 23:16 de root