2015-04-23 19 views
7

Şablon için do a simple binding from an Angular2 bileşenini deniyorum. Benim şablon kodu ... şuna benzerBasit bir metin girişi nasıl yapılır Angular 2

<textarea class="left-side" #newLeft (keyup)="enterLeftText($event, newLeft)"></textarea> 

<textarea class="right-side">{{leftText}}</textarea> 
Ben şu var benim bileşeninde Sonra

...

enterLeftText($event, newLeft) { 
    this.leftText = newLeft.value; 
} 

sorun newLeft hep tanımsız olmasıdır. Neyi kaçırıyorum?

+2

'textarea' '# binding' gösterimini desteklemiyor gibi görünüyor. Belki henüz uygulanmadı, olayları izlemek ve – floribon

+0

modelini güncellemek için kendi yönergelerini oluşturmanız gerekir. Http://plnkr.co/edit/dtbDwneFFIiTazjiF7Li?p=preview hala şansınız yok – Jackie

+0

haklısınız , hata başka bir yerdeydi, cevabım – floribon

cevap

9

#id bağlayıcısında büyük harf kullanamıyoruz gibi ilginç bir hata buldunuz.

http://plnkr.co/edit/ngqd0cUXyxsgBKOBSr9S?p=preview


UPDATE:

Basitçe sorununuzu çözecektir newleft ile newLeft yerine o id çizgi-kaydetti olması gerektiğini görünen aslında ve olduğu gibi değişken, deve durumdur Bağlama nitelikleri olduğunda Açısal 1 üzerinde.

<textarea class="left-side" #new-left (keyup)="enterLeftText($event, newLeft)"></textarea> 
+0

çılgın sözdizimi =) aurelia'nın ' –

+0

@arebutuv sözdizimi verilen kodla eşdeğer değil . Anahtarda bir işlev yürütmek istiyor. –

+1

Şablonlar artık camelCase (geç betadan beri) ve "# newLeft" iyi çalışıyor. –

0

"# yeni sol" istisna almak kullanarak

EXCEPTION: Error: Uncaught (in promise): Template parse errors: "-" is not allowed in variable names

camelCased değişken adları ile çözüm çalışıyor:

Yani sorunun gerçek cevabı #new-left yazmaktır şimdi benim için.