由於我已將Backbone從0.9.2升級到0.9.9,因此出現一些錯誤。驗證方法在主幹上調用默認屬性
當我使用散列默認值實例化新模型時。驗證方法是調用以驗證這些值並失敗。
基本上我想用新消息設置contactModel,但是這個消息應該與默認的不同。這就是爲什麼在這個模型的實例中驗證失敗。 由於未在實例中調用驗證方法,因此在骨幹0.9.2上正常工作。
有人可以解釋這是什麼問題嗎?
這是我BackboneModel:
class ContactModel extends Backbone.Model
defaults :
message : 'Initial message'
validate : (attrs_) =>
if attrs_.message.toString() is @.defaults.message.toString()
return 'Same message'
if attrs_.message.length < 55
return 'Your message is too short buddy'
sync : =>
#Custom Sync implementation
這是我BackboneView:
class ContactPageView extends AbstractView
id : 'contact-page'
template : null
model : null
events :
'keypress #contactTextArea' : 'onKeyPress'
'submit #contactForm' : 'submit'
init : ->
@model = new ContactModel()
console.log @model.get 'message'
#Print "undefined"
@model.bind "success", @success, this
@model.bind "error", @error, this
@template = _.template $('#template_page_contact').html()
謝謝哥們:) – socrateisabot