Отключение пользовательского ввода в представлении коллекции Marionette, которое обновляется другими частями приложения.

Необходимо отключить кнопки ввода для элементов в представлении коллекции Marionette.

Обычно я просто делаю:

TheView.$el.find('input').prop('disabled', true);

Это должно отключить все элементы ввода в представлении.

Проблема, с которой я сталкиваюсь, заключается в том, что другие части приложения обновляют это представление, в результате чего все новое, что появляется в представлении, не отключается.

Какова хорошая модель поведения в этой ситуации?


person Chris Dutrow    schedule 09.05.2014    source источник
comment
Какой вид вы используете? И как обновляется? Ваш подход в порядке, я думаю, просто примените его снова после того, как произойдут изменения.   -  person Wilbert van de Ridder    schedule 10.05.2014
comment
ваше описание проблемы неясно, как другая часть обновляет вид? и где вы размещаете код выше в представлении?   -  person bingjie2680    schedule 10.05.2014


Ответы (1)


INHO не очень хорошо работать с элементами ItemView из представления коллекции - лучше использовать настраиваемое событие или переместить логику отключения в представление элементов.

Если у вас есть другие модули, обновляющие представление - на вашем месте я бы переместил термин отключения в шаблон ItemView - в этом случае любое обновление будет проверять этот термин и правильно отображать ввод.

person Evgeniy    schedule 23.05.2014