전체, 저는 Backbone의 초보자입니다. 그리고 Backone의 모델을 이해하려고 노력하고 있습니다. 특히 모델을 정의하는 방법. 지금까지 백본 모델을 정의하는 방법에 대한 명확한 공식적인 방법을 보지 못했습니다. 예를 들어 도움말 문서의 set 메소드를 보자.백본 세트 방법 및 모델을 이해하십시오.
는
모델의 특성 (하나 이상의)의 해시를 설정
model.set (속성, [옵션])을 설정합니다.
다음과 같은 코드가 있다고 가정 해보십시오. 난 set
메서드는 실제로 모델에 자바 스크립트 개체를 할당 생각합니다.
window.Employee = Backbone.Model.extend({
validate:function(attrs){
for(var key in attrs){
if(attrs[key] == ''){
return key + "can not be null";
}
if(key == 'age' && isNaN(attrs.age)){
return "age is numeric";
}
}
}
});
....
var attr = {}; // I can't not sure what is {} mean.
$('#emp-form input,#emp-form select').each(function(){
var input = $(this);//using jquery select input and select. and enumerate all of them.
attr[input.attr('name')] = input.val();//I am not sure what does it means
});
if(employee.set(attr)){
Employees.create(employee);
}
....
이 예에서는 클래스 필드 나 메소드를 정의하기 위해 Java 클래스 나 C# 클래스에서 볼 수있는 고전적인 방식을 보지 못했습니다. 그러나 단지 validate
기능을 볼 수 있습니다. 나를 이해하는데 도움이 될만한 사람이 있습니까? 감사.
모델에서 무엇을하는지 잘못되었습니다. 모델에서 설정하기 전에보기의 값을 확인해야합니다. –
제 친구는 JavaScript에서 OOP의 작동 방식을 먼저 읽어 보시기 바랍니다. ** ** C# 및 Java에서 작동하는 방식과 매우 다릅니다 **. –
내 친구, 존, 고마워. 저에 대한 몇 권의 책을 추천 해주십시오. –