2014-04-18 11 views
9

Właśnie zaktualizowałem do AngularDart 0.10, przemianowałem moje kontrolery Ngcontroller i jestem bardzo zaskoczony tym, że Controller jest oznaczony jako przestarzały przez edytor dart. Widziałem, że kontroler powinien zniknąć w AngularDart 1.0 [1], ale dlaczego jest już przestarzały? Czy mam teraz użyć czegoś innego?Dlaczego kontroler jest przestarzały w AngularDart 0.10.0?

[1] http://blog.angulardart.org/2014/04/angulardart-0100-ostemad-teleportation.html

Odpowiedz

10

ja naprawdę nie rozumiał to zmienić siebie, ale pewne informacje:

https://github.com/angular/angular.dart/issues/919

Wydaje się, że jest tylko kontroler najwyższego poziomu w lewo i w inny komponent powinien być stosowany . To również powoduje, że publishAs jest przestarzały.

Zobacz także: https://github.com/angular/angular.dart/issues/413

Misko Heverys odpowiedź na temat uzasadnienia decyzji
(skopiowane z https://github.com/angular/angular.dart/issues/919)

ng-kontrolera jakieś dziwne semantykę i zawsze czułem się jak dziwne człowieka na zewnątrz. ng-kontroler jest użyteczny tylko poza komponentem, a zagnieżdżanie ich ma problemy, więc zwykle masz tylko jeden.

Usunięcie go upraszcza świat. Problem polega na tym, że sprawia, że ​​cześć światowych aplikacji jest bardziej skomplikowana, ale zostanie rozwiązana przez , dzięki czemu katalog główny aplikacji będzie miał swój własny typ, a jeden uzyskałby najlepszy ze wszystkich światów.

Kwestia, że ​​wszystko musi być komponentem, jest tylko kwestią o numerze , jeśli koszt jej utworzenia jest wysoki. Jeśli masz lekkie komponenty z dyrektywami dekoratorów, to masz wszystkie narzędzia, których potrzebujesz do budowania aplikacji.

+0

OK, ale problem, który widzę w odniesieniu do komponentów, polega na tym, że ponieważ używają shadow house, nie są one stylizowane jako pozostałe strony, prawda? – Vincent

+2

Istnieje kontroler główny bez komponentu i można również spojrzeć na https://github.com/angular/angular.dart/blob/1e5ecbc48351e292d1c167c97ca1150ce77ca479/lib/core/annotation_src.dart#L316 –

+0

Co do stylu: możesz wybrać, czy chcesz, aby styl komponentu stanowił pozostałą stronę, czy też chcesz używać stylu specyficznego dla danego komponentu. Aby zastosować globalne pliki CSS, ustaw atrybut "applyAuthorStyles" dla komponentu @NgComponent na wartość true (tj. @NgComponent (applyAuthorStyles: true, selector = '... "). –

Powiązane problemy