Angular 2 & TypeScript


Pré-requisitos

  • Instalação AngularJS 2
  • Instalação TypeScript

Código AngularJS 2


Componentes

As componentes são os blocos principais para construção de uma app em AngularJs 2:

AngularJS 1AngularJS 2
App.jsComponente de topo
DirectivaComponente
Controller e viewComponente
Directiva com controllerComponente

Implementação de uma componente
app.ts

import {bootstrap, Component, FORM_DIRECTIVES} from 'angular2/angular2';

class Hero {
  id: number;
  name: string;
}

@Component({
    selector: 'my-app',
    template: '<div>
 <label>name: </label>
 <input [(ng-model)]="hero.name" placeholder="name">
        </div>',
    directives: [FORM_DIRECTIVES]
})

class LittleComponent {
    public title = 'Tour of Heroes';
    public hero: Hero = {
        id: 1,
        name: 'Windstorm'
    };
}

bootstrap(LittleComponent);
Para definir uma componente AngularJS 2 é necessário criar uma classe (TypeScript) e decorá-la (TypeScript) com a anotação @Component. A classe contém a lógica enquanto a anotação define a componente AngularJS 2.
Selector
Indica como a componente vai ser activada no HTML
<my-app></my-app>
Template
O HTML que vai ser inserido na componente. Pode ser URL;
Directives
Array das componentes a usar. FORM_DIRECTIVES componentes nativas.
[(ng-model)]
Two-way data binding. Binding hero.name - input;
Typed language
Instanciação da classe Hero.

Dependency Injection

import {bootstrap, Component, FORM_DIRECTIVES} from 'angular2/angular2';

Com TypeScript há autocomplete enquanto se escreve dentro do 'import { '.

Templating



Bootstrap

bootstrap(LittleComponent);

Código HTML


index.html

<html>
  <head>
    <title>Angular 2 QuickStart</title>
    <script src="../node_modules/systemjs/dist/system.src.js"></script>
    <script src="../node_modules/angular2/bundles/angular2.dev.js"></script>
    <script>
      System.config({
        packages: {'app': {defaultExtension: 'js'}}
      });
      System.import('app/app');
    </script>
  </head>
  <body>
    <my-app>Loading...</my-app>
  </body>
</html>




Outro exemplo disponível aqui.






fonte: Creating your first Angular 2 app
Licença CC BY-SA 4.0 Silvia Pinhão Lopes, 4.11.15
Print Friendly and PDF

Sem comentários:

Com tecnologia do Blogger.