ExtJS Двунаправленная привязка данных? Или альтернативы - PullRequest
5 голосов
/ 24 февраля 2011

Я довольно опытный разработчик Flex / .NET, который сейчас изучает html5 / javascript.Я играл с Ext Core и ExtJS в течение последних нескольких недель, и меня интересует, используют ли люди эти библиотеки для двунаправленной привязки данных к данным, не основанным на списках.

Кажется, что большая часть поддержки связывания направлена ​​на связывание строк данных с сетками.Я заинтересован в привязке элементов пользовательского интерфейса к произвольным объектам POJO, которые не являются данными на основе списка.

Возможно, я просто не ищу нужные места, но не нахожу поддержку для этого.

Мне действительно интересно услышать, что люди делают в Ext ИЛИ, что люди рекомендуют в качестве альтернативы.

Ответы [ 4 ]

3 голосов
/ 02 апреля 2012

Хотя не существует готового решения, такого как, например, @Bindable от Flex, Extjs предлагает инфраструктуру для создания привязок.Если вы посмотрите на http://blog.dnet -ebusiness-suite.com / 2012/03 / data-binding-in-extjs-4-grid-form.html , вы увидите демонстрацию этого, гдемодели (экземпляр фильтра и экземпляр записи, экземпляры Ext.data.Model, управляемые или НЕ управляемые магазином) связаны с различными представлениями.Функциональность достигается с помощью тонкого фреймворка, построенного поверх Extjs.

С другой стороны, связать произвольные POJO - это точно такая же история, они должны реализовать Observable и запустить некоторые события изменения свойств, которые можно прослушивать.Сообщения в блоге и сам фреймворк дают хорошую отправную точку для того, как это сделать.

Другой способ / концепция - http://www.sencha.com/forum/showthread.php?60809-Ext.ux.data.BindMgr-Databind-Manager, который я использовал с extjs 3 и работает нормально.

1 голос
/ 24 декабря 2011

Продолжение ... Я так и не нашел подход ExtJS и перешел к другим js-фреймворкам / подходам и попутно узнал о нокауте: http://knockoutjs.com/, что чертовски круто!

0 голосов
/ 11 июля 2011

Взгляните на jQXB, http://www.jqxb.altervista.com. Похоже, он предоставляет очень простой и мощный API для связывания данных с HTML-элементами

0 голосов
/ 24 февраля 2011

Вам нужна функциональность BasicForm ?(В частности: loadRecord)

Если вы хотите отображать только для чтения, вы можете использовать DisplayFields или отключенные TextFields или аналогичные.

...