Есть ли простой способ заставить набор инструментов dojo/dijit работать с нокаутируемыми наблюдаемыми?
Если у меня есть заявленный выбор
<select id="sel1" dojoType="dijit.form.Select" >...
И я добавляю свою привязку нокаут-данных
<select id="sel1" dojoType="dijit.form.Select" data-bind=".....">...
Если нокаутируемый массив / связывание инициализируется до dojo.ready, поле выбора заполняется правильными значениями, однако, поскольку dojo перезаписывает шаблоны, мы теряем наши наблюдаемые.
Я бы предпочел не мигрировать в наблюдаемые додзё, но, похоже, в этом случае мне придется.
Я продолжаю расследование, но похоже, что нам нужно будет сделать этот шаг.
2 ответа
Изменить: Это не ответ, хотя это отправная точка.
Похоже, есть нокаутирующий разъем додзё.
https://github.com/imankulov/knockout-dojo-connector/blob/master/sample.html
Но нет образцов для наблюдаемых массивов и связывания с выборками.
Я не большой поклонник подхода нокаут-додзё-коннектор. Я думаю, что более чистым подходом было бы сохранить привязки KO в разметке и применить привязку attr для вашего типа dojo. Примерно так должно работать:<select id="sel1" data-bind="attr: {'dojoType': dojoTypeInViewModel}">...