2012-10-15 1 views
1

는 내가이 같은 JSON 스키마를 통해 다른 자원의 설명하는 API가 있음을 감안할 때 : 프론트 엔드로 JSON 스키마를 사용할 수있는 자바 스크립트 프레임 워크가 있습니까 https://github.com/salesking/sk_api_schema/blob/master/json/v1.0/address.jsonjson 스키마로 설명 된 리소스를 사용하기위한 프론트 엔드 프레임 워크는 무엇입니까?

를 (또는 번역) 모델을? json 스키마에 대해 모델을 검증 할 수 있어야하며 다른 json-schema 모델 간의 참조를 처리 할 수 ​​있어야합니다.

나는 ember.js에서 조금보고 있었지만 json 스키마를 ember 모델로 변환하는 코드를 작성하더라도 여전히 ember.js에 대한 유효성 검사를 수행하는 데는별로 멀지 않은 것으로 보입니다. 모델. 옳은?

+0

또한 자원이 정적이 아니므로 핸드 롤링 모델이 아닙니다. 가능합니다. – oskbor

+0

나열된 프레임 워크 중 어느 것도 out-of-the-box를 수행 할 수 있다고 생각하지 않습니다. 구체적으로 녹아웃을 사용하면 사용자가 생성 할 수없는 개체 그래프를 생성 한 후에 해당 개체 그래프에서보기 (UI)를 만드는 것이 어려워집니다. – Tyrsius

답변

2

JSON 스키마에 대해 잘 모르면서 Knockout이이를 쉽게 지원할 수 있다고 생각합니다. KO 모델은 모든 자바 스크립트 객체가 될 수 있기 때문에

, 당신은 스키마를 읽어해야하고, 동적으로 넉 아웃을 사용하여 또한 유효성 검사를 추가 할 수 있습니다

"속성"속성의 속성 (하하)의 각각에서 객체를 생성 단지 것 검증 플러그인 : https://github.com/ericmbarnard/Knockout-Validation

결합 예 :

var schema = // read in json 
var model = {} 

for (prop in schema.properties) { 
    model[prop] = ko.observable().extend({ 
         maxLength: /* get your value from schema, etc */, 
         minLength: /* get your value from schema, etc */ 
        } 
} 
1

JXT (http://www.jxtdev.com) 모델은 JSON으로 초기화되며, 또한 JSON은 공동 사용 JavaScript 패키지를 설정하십시오. JXT는 MVC 패턴을 구현하고 모델에 포함 된 데이터가 변경되면 뷰를 자동으로 다시로드 할 컨트롤러에 알립니다. 이 이벤트 중심 접근 방식은 JXT 모음 (기본 JavaScript 모음을 둘러싼 래퍼)에서 시작하여 프레임 워크의 모든 곳에서 사용됩니다. 방금 첫 번째 베타 버전을 출시 했으므로 아직 미성숙 한데도 찾아 볼 수 있습니다.)