Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Ext.form.field.Text.triggers — Соединить метод контроллера и обработчик триггера (https://javascript.ru/forum/extjs/56356-ext-form-field-text-triggers-%E2%80%94-soedinit-metod-kontrollera-i-obrabotchik-triggera.html)

khusamov 11.06.2015 20:26

Ext.form.field.Text.triggers — Соединить метод контроллера и обработчик триггера
 
Здравствуйте!

Код в песочнице: https://fiddle.sencha.com/#fiddle/ogh

Я делаю триггер для поля потомка от класса Ext.form.field.Text

triggers: {
	foreign: {
		handler: "onForeignTriggerClick"
	}
}


И в контроллере описываю конечно же метод onForeignTriggerClick.

Но при нажатии на триггер получаю неизменную ошибку:

Uncaught Error: No method named "onForeignTriggerClick" on ForeignKey

Что я делаю не так?

Код в песочнице: https://fiddle.sencha.com/#fiddle/ogh

siber-biber 12.06.2015 22:15

onForeignTriggerClick ищется на инстансе ForeignKey. Если хотели на другом надо было указать scope для handler-a. Зачем для поля контроллер? Это перебор помоему так обычно не делают.

khusamov 12.06.2015 23:17

Цитата:

Зачем для поля контроллер? Это перебор помоему так обычно не делают.
Речь пока о том, что это не работает. А должно.

Цитата:

onForeignTriggerClick ищется на инстансе ForeignKey.
Ну дык если там не находит, должен же искать в контроллере? С другими видами же так и происходит.

Я указал scope: "controller" - это ничего не поменяло.

siber-biber 13.06.2015 07:26

Если указать scope : "self.controller" будет работать, но это не документировано, нашел при отладке. Спросите на форуме сенча почему так. Вообще они везде в доке пишут про Container а у нас тут поле ..которое от него не наследует. Возможно дело в этом.

khusamov 13.06.2015 12:14

Цитата:

Вообще они везде в доке пишут про Container а у нас тут поле
были такие мысли...
Ладно, придется позже с этим разбираться.


Часовой пояс GMT +3, время: 12:25.