Chcę zdefiniować zmienną lokalną w tagu wejściowego dla kątowym 2 Zastosowanie:Zapobieganie Jade z dodaniem klauzuli przypisania w elemencie HTML
input(#sometext)
button((click)="addTechnology(sometext.value)") Add
wyjście, które spodziewam się:
<input #sometext/>
<button (click)="addTechnology(sometext.value)">Add</button>
jednak prawdziwe wyjście (zauważ dodatkowy ="#sometext"
):
<input #sometext="#sometext"/>
<button (click)="addTechnology(sometext.value)">Add</button>
to wa y, kątowe 2 wyrzuca następujący błąd, bardzo prawdopodobne, ze względu na to ="#sometext"
:
Cannot find directive with exportAs = '#sometext'
Error: Cannot find directive with exportAs = '#sometext'
at new BaseException (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:7248:25)
at _findDirectiveIndexByExportAs (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12454:13)
at https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12435:22
at Map.forEach (native)
at Function.execute.MapWrapper.forEach (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:7614:15)
at createDirectiveVariableBindings (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12434:16)
at _createProtoElementInjector (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12414:39)
at _createElementBinders (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12391:34)
at _createAppProtoView (https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12331:5)
at https://code.angularjs.org/2.0.0-alpha.28/angular2.dev.js:12641:32
Znasz sposób zapobiegania Jade ukończenie atrybut z dodatkowym ="#sometext"
?
Prawdopodobnie jest to '' ' –
Według dokumentu https://angular.io/docs/js/latest/guide/user-input.html to jest sposób definiowania zmiennej, czyż nie? – codependent
Problem jest pisany wielkimi literami. Przeglądarka przekształca ją na małe litery przed kompilacją kątową i nic nie mogą z tym zrobić. Zmień go na '# sometext'. Zobacz ten https://github.com/angular/angular/issues/1447 –