SlideShare a Scribd company logo
Angular 4
Introduzione ad Angular CLI
in collaborazione conAngular CLI 2
Angular CLI (Command Line Interface) ci permette di creare un
nuovo progetto Angular 2/4+ già pronto e configurato secondo
un blueprint ben definito.
1.
LISTA DELLA SPESA
in collaborazione conAngular CLI 3
in collaborazione conAngular CLI
TypeScript
npm install -g typescript
https://www.typescriptlang.org/
4
in collaborazione conAngular CLI
Angular CLI
npm install -g @angular/cli
https://cli.angular.io/
5
in collaborazione conAngular CLI
WebStorm
https://www.jetbrains.com/webstorm/
6
in collaborazione conAngular CLI
Visual Studio

Code
https://code.visualstudio.com/
7
...consiglio però vivamente WebStorm!!!
in collaborazione conAngular CLI 8
Angular CLI si basa su Webpack, module bundler fortemente
utilizzato in ambiente React.
Webpack permette di collezionare tutti i file richiesti (librerie, file
css, immagini, ecc) e di creare dei bundle (pacchetti) per ogni
tipologia di risorsa.
in collaborazione conAngular CLI 9
Grazie a Webpack, il progetto finale sarà composto da pochissimi
file, in quanto è Webpack stesso che li unisce e li ottimizza a
seconda del tipo.
Solitamente, un'applicazione Angular è composta da 4 bundle:
se non ci fosse Webpack, la nostra applicazione avrebbe
centinaia di file da caricare, con enormi problemi di performance
(oltre che di gestione del progetto).
in collaborazione conAngular CLI
ng new AppName
Crea un nuovo progetto Angular
chiamato AppName.
Crea automaticamente la cartella
AppName e imposta il prefisso
dell'app di default (app-)
10
in collaborazione conAngular CLI
ng new AppName --prefix my
È possibile indicare un proprio
prefisso al posto di app-
utilizzando il flag --prefix
11
in collaborazione conAngular CLI
ng new AppName --style scss
È possibile indicare l'uso di pre-
processori CSS (sass, less, ecc.)
invece di CSS puro, utilizzando il
flag --style
12
in collaborazione conAngular CLI
ng serve
Avvia il server di sviluppo.
Per tutti i parametri possibili:

ng serve -h
13
in collaborazione conAngular CLI
ng build
Crea il pacchetto finale.
Per tutti i parametri possibili:

ng build -h
14
in collaborazione conAngular CLI 15
Angular CLI permette di gestire, inoltre, la creazione di tutti i
costrutti necessari per un'applicazione.
Componenti, service, classi, pipes e tutti gli altri costrutti possono
venir generati e gestiti automaticamente.
in collaborazione conAngular CLI
ng generate ...
Permette di generare un
costrutto di Angular (component,
service, pipe, ecc).
16
Angular 4
HelloAngular
in collaborazione conAngular CLI
1.
BOOTSTRAP
18
in collaborazione conAngular CLI
ng new HelloAngular
19
Se devi utilizzare SASS: ng new HelloAngular --style=scss
in collaborazione conAngular CLI 20
/* src/main.ts */
import { platformBrowserDynamic } from '@angular/platform-browser-
dynamic';
import { AppModule } from './app/app.module';
platformBrowserDynamic().bootstrapModule(AppModule);
2.
@NgModule
in collaborazione conAngular CLI 21
in collaborazione conAngular CLI 22
/* src/app/app.module.ts */
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
3.
ROOT COMPONENT
in collaborazione conAngular CLI 23
in collaborazione conAngular CLI 24
/* src/app/app.component.ts */
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app';
}
in collaborazione conAngular CLI
© 2017 - Giovanni Buffa
25

More Related Content

PDF
Introduzioni ai services in Angular 4 e ad RxJS
PDF
Introduzione ai componenti in Angular 4
PDF
Angular 4 - convertire o migrare un'applicazione Angularjs
PDF
Introduzione ad ECMAScript 6 (ES6) e TypeScript
PDF
Introduzione a Sass e Less (ITA)
PDF
Angular js o React? Spunti e idee per la scelta di un framework
PDF
Introduzione ad angular 7/8
PPT
Alla scoperta di Zend Framework 1.8
Introduzioni ai services in Angular 4 e ad RxJS
Introduzione ai componenti in Angular 4
Angular 4 - convertire o migrare un'applicazione Angularjs
Introduzione ad ECMAScript 6 (ES6) e TypeScript
Introduzione a Sass e Less (ITA)
Angular js o React? Spunti e idee per la scelta di un framework
Introduzione ad angular 7/8
Alla scoperta di Zend Framework 1.8

What's hot (12)

PPTX
CommitUniversity AngularJSAdvanced Andrea Vallotti
PPT
Zend Framework Workshop Parte2
PPTX
Lavorare con applicazioni Brownfield: il caso di 39x27.com
PDF
Zend Framework Workshop Parte1
PDF
ModulAngular
PPTX
Git Flow - Un modello di branching che funziona
PDF
introduzione a symfony 2
PPTX
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
PDF
Angularjs
PPTX
Servizi e Dependency Injection in Angular
PDF
Workshop angular
PDF
Angular Components e Pipe
CommitUniversity AngularJSAdvanced Andrea Vallotti
Zend Framework Workshop Parte2
Lavorare con applicazioni Brownfield: il caso di 39x27.com
Zend Framework Workshop Parte1
ModulAngular
Git Flow - Un modello di branching che funziona
introduzione a symfony 2
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
Angularjs
Servizi e Dependency Injection in Angular
Workshop angular
Angular Components e Pipe
Ad

More from Giovanni Buffa (18)

PDF
15 concetti importanti su javascript
PDF
Introduzione a Drupal - Versione Italiana
PDF
Laboratorio di Web Design 2015/16 - Introduzione al corso
PDF
Workshop Ideare e creare Web Applications, Introduzione ad AngularJS
PDF
Introduzione a JavaScript
PDF
Introduzione a GIT - Laboratorio di Web Design 2014/15
PDF
Developing for Performances - Laboratorio di Web Design 2014/15
PDF
Responsive Web Design & Mobile
PDF
The CSS Survival Manual - Giovanni Buffa (2014)
PDF
Introduzione al Theme Engin di Drupal 7
PDF
Introduzione a Drupal 7 Entity
PDF
SEO - Laboratorio di Web Design 2014/15
PDF
Introduzione a SASS - Laboratorio di Web Design 2014/15
PDF
Introduzione a Drupal
PDF
CSS - Box Model
PDF
Laboratorio di Web Design Base - 2014/15 - HTML/5
PDF
Laboratorio di Web Design Base - 2014/15 - Web History
PDF
Laboratorio di Web Design 2014/15 - Introduzione al corso
15 concetti importanti su javascript
Introduzione a Drupal - Versione Italiana
Laboratorio di Web Design 2015/16 - Introduzione al corso
Workshop Ideare e creare Web Applications, Introduzione ad AngularJS
Introduzione a JavaScript
Introduzione a GIT - Laboratorio di Web Design 2014/15
Developing for Performances - Laboratorio di Web Design 2014/15
Responsive Web Design & Mobile
The CSS Survival Manual - Giovanni Buffa (2014)
Introduzione al Theme Engin di Drupal 7
Introduzione a Drupal 7 Entity
SEO - Laboratorio di Web Design 2014/15
Introduzione a SASS - Laboratorio di Web Design 2014/15
Introduzione a Drupal
CSS - Box Model
Laboratorio di Web Design Base - 2014/15 - HTML/5
Laboratorio di Web Design Base - 2014/15 - Web History
Laboratorio di Web Design 2014/15 - Introduzione al corso
Ad

Introduzione ad Angular CLI

  • 2. in collaborazione conAngular CLI 2 Angular CLI (Command Line Interface) ci permette di creare un nuovo progetto Angular 2/4+ già pronto e configurato secondo un blueprint ben definito.
  • 3. 1. LISTA DELLA SPESA in collaborazione conAngular CLI 3
  • 4. in collaborazione conAngular CLI TypeScript npm install -g typescript https://www.typescriptlang.org/ 4
  • 5. in collaborazione conAngular CLI Angular CLI npm install -g @angular/cli https://cli.angular.io/ 5
  • 6. in collaborazione conAngular CLI WebStorm https://www.jetbrains.com/webstorm/ 6
  • 7. in collaborazione conAngular CLI Visual Studio
 Code https://code.visualstudio.com/ 7 ...consiglio però vivamente WebStorm!!!
  • 8. in collaborazione conAngular CLI 8 Angular CLI si basa su Webpack, module bundler fortemente utilizzato in ambiente React. Webpack permette di collezionare tutti i file richiesti (librerie, file css, immagini, ecc) e di creare dei bundle (pacchetti) per ogni tipologia di risorsa.
  • 9. in collaborazione conAngular CLI 9 Grazie a Webpack, il progetto finale sarà composto da pochissimi file, in quanto è Webpack stesso che li unisce e li ottimizza a seconda del tipo. Solitamente, un'applicazione Angular è composta da 4 bundle: se non ci fosse Webpack, la nostra applicazione avrebbe centinaia di file da caricare, con enormi problemi di performance (oltre che di gestione del progetto).
  • 10. in collaborazione conAngular CLI ng new AppName Crea un nuovo progetto Angular chiamato AppName. Crea automaticamente la cartella AppName e imposta il prefisso dell'app di default (app-) 10
  • 11. in collaborazione conAngular CLI ng new AppName --prefix my È possibile indicare un proprio prefisso al posto di app- utilizzando il flag --prefix 11
  • 12. in collaborazione conAngular CLI ng new AppName --style scss È possibile indicare l'uso di pre- processori CSS (sass, less, ecc.) invece di CSS puro, utilizzando il flag --style 12
  • 13. in collaborazione conAngular CLI ng serve Avvia il server di sviluppo. Per tutti i parametri possibili:
 ng serve -h 13
  • 14. in collaborazione conAngular CLI ng build Crea il pacchetto finale. Per tutti i parametri possibili:
 ng build -h 14
  • 15. in collaborazione conAngular CLI 15 Angular CLI permette di gestire, inoltre, la creazione di tutti i costrutti necessari per un'applicazione. Componenti, service, classi, pipes e tutti gli altri costrutti possono venir generati e gestiti automaticamente.
  • 16. in collaborazione conAngular CLI ng generate ... Permette di generare un costrutto di Angular (component, service, pipe, ecc). 16
  • 18. in collaborazione conAngular CLI 1. BOOTSTRAP 18
  • 19. in collaborazione conAngular CLI ng new HelloAngular 19 Se devi utilizzare SASS: ng new HelloAngular --style=scss
  • 20. in collaborazione conAngular CLI 20 /* src/main.ts */ import { platformBrowserDynamic } from '@angular/platform-browser- dynamic'; import { AppModule } from './app/app.module'; platformBrowserDynamic().bootstrapModule(AppModule);
  • 22. in collaborazione conAngular CLI 22 /* src/app/app.module.ts */ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
  • 24. in collaborazione conAngular CLI 24 /* src/app/app.component.ts */ import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'app'; }
  • 25. in collaborazione conAngular CLI © 2017 - Giovanni Buffa 25