2014-02-27 3 views
1

메서드를 사용하여 backbone.js을 배우고 있습니다.backbone.js의 유효성 검사 방법이 작동하지 않습니다.

JS : 콘솔에서

var person = Backbone.Model.extend({ 
    defaults:{ 
     name:"Soni", 
     age:'40', 
     work:'Still searching' 
    }, 
    mainWork: function(mainwork) { 
     return this.get('name')+" does "+mainwork+" for living"; 
    }, 
    validate: function(attrs) { 
      console.log("hi"); 
     if (attrs.age < 1) { 
      return "can't end before it starts"; 
     } 
    } 
}); 

:

var x = new person({name:'xyz',age:37}); 
x.set('age',-34); 

내가 여기 실종 무엇을 말해주십시오하지만 내 코드입니다 다음 set 에서 트리거지고 있지 않습니다.

답변

3

유효성 검사 메소드는 모델 save에서 호출됩니다. 당신이 속성에 트리거하려면 set 당신은 유효성을 검사합니다 호출해야 진정한 옵션 : 나는, 그 사람은`set` 방법에 작동하는지 말하고 있었다 Nettus에 스크린 캐스트를보고 있었다

x.set({age: -34}, {validate: true}); 
+0

. 자신의 스크린 캐스트에서도 설정 메서드 실행시 유효성 검사가 작동했습니다. –

+0

글쎄, 나는 무엇을 말할 수있다, 나는 단지 당신이 validate : true 옵션을 건다면 그것이 디폴트로 작동한다는 것을 안다. http://backbonejs.org/#Model-validate – dfsq

+0

다음은 공식 웹 사이트 여야합니다 ... thnx에게 도움을주세요 :) –

관련 문제