1.值更改觸發時間
更改view后,焦點離開當前dom元素,view-model的值就改變。你可以設置valueUpdate: "afterkeydown"
使得view值改變,view-model值立馬改變(類似於onkeyup事件)。
更改view-model后,view的值立馬改變。
2.注意引用傳遞和值傳遞
值傳遞,最常見的就是你model類型是string和number,於是你改了model的值,view-model不變。
引用傳遞,最常見的就是Array類型,你的Model類型Array數據,shift()了,你的view-model改變,你的view也改變了。
3.select元素的單擊事件
select元素,你綁定了click事件,其實是雙擊事件,它的單擊事件是change。
4.foreach綁定
一,要求的數組格式是[{key:value1},{key:value2}] ,這可能與你數據庫保存的數組格式不同。於是,你需要個轉化函數。
二,如果你想綁定[value1,value2,value3]這種數組格式,要用$data。但是,這樣只能顯示數據,你在view里修改了數據,不會影響到view-model,因為這是值傳遞。
三,$parent概念,當前對象所在集合了,經常用於remove。$root概念,就是集合a包集合b包集合c,集合c的$root就是集合a,集合c的$parent就是集合b。
5.with綁定
foreach綁定的是數組,with綁定的則是對象。
6.自定義綁定
這下你牛B了,value綁定,text綁定都只是knockout自帶的,你也寫出yourname綁定。