Kątowej 2, wewnątrz element główny składnik

głosy
23

Grałem z kątowym 2 demo na angular.io. Teraz chcę, aby utworzyć nowy składnik i użyć go w mojej aplikacji.

Mój obecny aplikacja:

import {Component, Template, bootstrap} from 'angular2/angular2';
import {UsersComponent} from './components/users/component.js';

// Annotation section
@Component({
  selector: 'my-app'
})
@Template({
  url:app.html
})
// Component controller
class MyAppComponent {
  newName:string;
  names:Array<string>;
  constructor() {
    this.name = 'Florian';
  }

  showAlert(){
    alert(It works);
  }

  addName(){
    names.push(newName);
    newName = ;
  }
}

bootstrap(MyAppComponent);

Mój komponent:

import {Component, Template, bootstrap} from 'angular2/angular2';
// Annotation section
@Component({
  selector: 'users'
})
@Template({
  url:./template.html
})
// Component controller
class UsersComponent {
  newName:string;
  names:Array<string>;
  constructor() {

  }

  addName(){
    names.push(newName);
    newName = ;
  }
}

Nie jestem pewien, czy składnia moim komponentu użytkownika jest poprawna w ogóle.

Moja aplikacja szablon:

<h1>Hello ` name `</h1>
<h2>{{2+2}}</h2>
<hr />
<button (click)=showAlert()>Click to alert</button>
<users></users>

Więc jak mam drut komponentu użytkownik?

Błąd pojawia się w konsoli:

 Error loading components/users/component.js at <unknown>↵Error loading components/users/component.js from app at http://localhost:8080/app.es6↵Cannot read property 'replace' of undefined
Utwórz 18/03/2015 o 10:09
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
22

Kątowe Demo kalendarz dwie zagnieżdżone części (kalendarza i kalendarza komórek) https://github.com/djsmith42/angular2_calendar.git . Z tego, co mogę tam zobaczyć swój MyAppComponent powinien odwoływać składnik użytkowników z listy dyrektyw @ szablonu, jak poniżej:

@Template({
  url: System.baseURL+'app/components/calendar/calendar.html',
  directives: [
    Foreach,
    If,
    CalendarCell
  ]
})
Odpowiedział 18/03/2015 o 12:59
źródło użytkownik

głosy
10

W tym linkiem Angular2internecie https://angular.io/docs/ts/latest/tutorial/toh-pt3.html# widać, że dodanie directives: [...]wewnątrz @Componentsna przykład:

@Component({
  selector: 'my-app',
  directives: [UsersComponent]
})

ale poza tym wykorzystanie łącza szablon wewnątrz komponentu, nie wiem, czy to będzie działać, jeśli używasz @Template({ url:"app.html"})elementu zewnętrznego.

można oglądać nazwę pliku app.appcomponet.tsna więcej szczegółów, mam nadzieję, że pomoże.

Odpowiedział 08/02/2016 o 17:29
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more