【Angular2】模板語法之 ngModel

通過NgModel實現(xiàn)雙向綁定

當(dāng)開發(fā)一個數(shù)據(jù)錄入表單的時候樊零,我們常常希望既可以顯示數(shù)據(jù)的屬性值酣难,當(dāng)用戶更改時睹酌,又可以更新數(shù)據(jù)的屬性值。

  1. NgModel指令可以幫我們實現(xiàn)這個需求:
<input [(ngModel)]="currentHero.firstName"> 
  1. 如果我們更喜歡加前綴的格式的話拍鲤,也可以這樣寫:
<input bindon-ngModel="currentHero.firstName"> 
  1. 這個結(jié)構(gòu)的背后還有一層含義贴谎,這層含義基于我們之前學(xué)到過的屬性綁定和事件綁定技術(shù)。我們可以通過分別綁定input元素的value屬性和input事件去實現(xiàn)和NgModel相同的效果:
<input [value]="currentHero.firstName" (input)="currentHero.firstName=$event.target.value"> 
  1. 這種寫法是非常繁瑣的季稳,我們不僅需要記住需要設(shè)置的元素屬性擅这,還要記住反映用戶操作的事件。以及怎么提取當(dāng)前輸入框中的文本值景鼠,以便去更新數(shù)據(jù)屬性仲翎。有人愿意每次都去做這些工作嗎?NgModel指令隱藏了這些繁瑣細(xì)節(jié)铛漓,它包裝了元素的value屬性溯香,監(jiān)聽了input事件,并且在文本框發(fā)生改變時浓恶,觸發(fā)該事件玫坛。
<input [ngModel]="currentHero.firstName" (ngModelChange)="currentHero.firstName=$event"> 
  1. [(ngModel)]是否滿足了我們所有的需求了呢? 是否存在這樣的需求,需要我們使用它的擴展寫法呢包晰?NgModel僅僅可以設(shè)置目標(biāo)屬性湿镀。如果當(dāng)用戶改變輸入值炕吸,我們需要做一起不同的事情,或者更多地事情呢勉痴? 讓我們嘗試實現(xiàn)這樣一個需求赫模,將用戶的輸入強制轉(zhuǎn)換成大寫字母:
<input [ngModel]="currentHero.firstName" (ngModelChange)="setUpperCaseFirstName($event)"> 

可以看到,使用ngModel的擴展寫法蒸矛,可以實現(xiàn)更多地需求瀑罗。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市雏掠,隨后出現(xiàn)的幾起案子斩祭,更是在濱河造成了極大的恐慌,老刑警劉巖磁玉,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件停忿,死亡現(xiàn)場離奇詭異驾讲,居然都是意外死亡蚊伞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門吮铭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來时迫,“玉大人,你說我怎么就攤上這事谓晌÷尤” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵纸肉,是天一觀的道長溺欧。 經(jīng)常有香客問我,道長柏肪,這世上最難降的妖魔是什么姐刁? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮烦味,結(jié)果婚禮上聂使,老公的妹妹穿的比我還像新娘。我一直安慰自己谬俄,他們只是感情好柏靶,可當(dāng)我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著溃论,像睡著了一般屎蜓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上钥勋,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天炬转,我揣著相機與錄音控汉,去河邊找鬼。 笑死返吻,一個胖子當(dāng)著我的面吹牛姑子,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播测僵,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼街佑,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了捍靠?” 一聲冷哼從身側(cè)響起沐旨,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎榨婆,沒想到半個月后磁携,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡良风,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年谊迄,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片烟央。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡统诺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疑俭,到底是詐尸還是另有隱情粮呢,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布钞艇,位于F島的核電站啄寡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏哩照。R本人自食惡果不足惜挺物,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望葡秒。 院中可真熱鬧姻乓,春花似錦、人聲如沸眯牧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽学少。三九已至剪个,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間版确,已是汗流浹背扣囊。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工乎折, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人侵歇。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓骂澄,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惕虑。 傳聞我的和親對象是個殘疾皇子坟冲,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)溃蔫,斷路器健提,智...
    卡卡羅2017閱讀 134,633評論 18 139
  • 你一直對我特別好。小時候伟叛,特別崇拜你私痹,是那種小孩子對大哥哥的敬仰,因為你總是愛和我玩统刮,從來沒發(fā)過火紊遵。長大后,還是特...
    fc35218dfc17閱讀 407評論 0 0
  • 長發(fā)及腰數(shù)遍网沾,不見少年幾面癞蚕。 無奈心生一剪蕊爵,自此換了素顏辉哥。 閨內(nèi)外容不現(xiàn),除卻閑逸自練攒射。 待到山花永爛漫醋旦,巢中雁飛...
    敬言Wzing閱讀 308評論 0 0
  • We all know we can live in a high standard of life. You c...
    rachel_qin閱讀 365評論 0 0