2011-02-24 5 views
5

나는 지금 html5/javascript를 배우고있는 매우 숙련 된 Flex/.NET 개발자입니다. 나는 지난 몇 주간 Ext Core와 ExtJS를 사용 해왔다.리스트 기반이 아닌 데이터에 대해 양방향 데이터 바인딩을 수행하는 사람들이이 라이브러리를 사용하고 있는지 여부에 관심이있다.ExtJS 양방향 데이터 바인딩? 또는 대안

대부분의 바인딩 지원은 데이터 행을 그리드에 바인딩하는 것처럼 보입니다. 목록 기반 데이터가 아닌 임의의 POJO에 UI 요소를 바인딩하는 데 관심이 있습니다.

어쩌면 나는 적절한 곳을보고 있지 않을 수도 있지만, 이것에 대한 지원을 찾지 못하고 있습니다.

저는 여러분이 Ext에서 무엇을하고 있는지, 아니면 사람들이 대안으로 추천하고있는 것을 듣는 것에 정말로 관심이 있습니다.

답변

0

BasicForm 기능을 찾으십니까? (특히 : loadRecord)

읽기 전용 표시를 원할 경우 DisplayFields 또는 비활성화 된 TextField 또는 이와 유사한 것을 사용할 수 있습니다.

+1

음, loadRecord는 명시 적 호출입니다. 그렇지 않습니까? 그것은 바인딩이 아닙니다. 사실, 단일 레코드와 일부 UI 간의 관계가 표현되고 자동으로 동기화되도록 설정된 종류의 모델을 생각하고 있습니다. – Boon

+0

조금 더 살펴보면 아마도 http://dev.sencha.com/deploy/dev/examples/form/xml-form.html이 더 많은 것입니다. 버튼 클릭을로드/전송하도록 유선 연결되어 있지만 사용할 수있는 것보다 더 많은 이벤트가 있습니다. – wombleton

1

후속 ... 나는 ExtJS 접근 방식을 찾지 못했고 다른 js 프레임 워크/접근 방식으로 나아가 knockout에 대해 알게되었다. http://knockoutjs.com/ 그것은 꽤 멋져요!

3

예를 들어 Flex의 @Bindable과 같은 즉시 사용할 수있는 솔루션은 없지만 Extjs는 바인딩을 만드는 인프라를 제공합니다. http://blog.dnet-ebusiness-suite.com/2012/03/data-binding-in-extjs-4-grid-form.html을 보면 모델 (필터 인스턴스 및 레코드 인스턴스, 상점에서 관리하거나 관리하지 않는 Ext.data.Model의 인스턴스)이 다른보기에 바인딩되는 데모가 표시됩니다. 이 기능은 Extj 위에 구축 된 씬 프레임 워크를 통해 구현됩니다.

한편, 임의의 POJO를 바인딩하는 것은 똑같은 이야기이며 Observable을 구현하고 청취 할 수있는 속성 변경 이벤트를 실행해야합니다. 블로그 게시물과 프레임 워크 자체는이를 수행하는 방법에 대한 좋은 출발점을 제공합니다.

다른 방법/개념은 extjs 3와 함께 사용하고 잘 작동하는 http://www.sencha.com/forum/showthread.php?60809-Ext.ux.data.BindMgr-Databind-Manager입니다.

관련 문제