Создание своего компонента поддерживающего Bindable
Штатные компоненты могут при помощи bind как принимать значения из ViewModel, так и записывать в него.
Но как сделать свой компонент, чтобы он тоже так умел? Я думал что дело в создании события. Например есть свойство value. Надо сделать два метода setValue и getValue и сделать событие valuechange. Но это не сработало. Также не помогает twoWayBindable: ["value"] |
поиски пока ни к чему не привели... Копание кода ничего не дало (код просто безразмерный... там копаться еще месяц наверное можно). Где почитать об этом теорию???
|
Сделал пример в песочнице
https://fiddle.sencha.com/#fiddle/roh Поле myfield на прием работает, на передачу увы не пашет (то есть, когда я в нем меняю значение, то в связанных двух numberfield значение не меняется, а у штатных полей все работает как надо). И как это переделать чтобы заработало? |
Откапал таки способ это сделать. Оказывается в bindable есть для этого специальный метод:
field.publishState("value2", value); Исправленный код в той же песочнице https://fiddle.sencha.com/#fiddle/roh |
Здорово. Сам пытался найти.. неудачно.. спасибо за находку.
|
Ага, теперь такие клевые штуки наклевываются))
|
Часовой пояс GMT +3, время: 20:23. |