2015-04-12 177 views
3

在Backbone中是否存在綁定模型屬性到輸入字段,以便當輸入值更改時,模型屬性會自動設置爲當前值?Backbone綁定模型屬性到輸入

此刻,我已在我認爲以下

<input type="text" name="firstname" class="form-input" value="<%- model.firstname %>" /> 

然後在視圖中我聽下面的事件,並設置模型相應

events: { 
    "keydown .form-input": "setAttribute" 
}, 

setAttribute: function() { 
    //Use model.set on the attribute that was changed 
} 

屬性對我來說這似乎是一個不好的做法。我錯過了一個更簡單的方法嗎?

+0

joews是正確的;你的代碼對Backbone來說非常好。爲什麼你看起來不好? –

回答

4

這是用vanilla Backbone做到這一點的正確方法。如果你想設置自動數據綁定,你需要一個像Epoxy這樣的插件。

採用環氧樹脂,你的例子看起來是這樣的:

var BindingView = Backbone.Epoxy.View.extend({ 
    bindings: { 
    "[name=firstname]": "value:firstName", 
    } 
}); 

這種結合模型的firstName屬性與name="firstname"輸入。