如果我有声明的选择
<select id="sel1" dojoType="dijit.form.Select" >...
我添加了敲除数据绑定
<select id="sel1" dojoType="dijit.form.Select" data-bind=".....">...
如果在dojo.ready之前初始化了knockout array / bind,那么选择框将填充正确的值,但是因为dojo重写了模板,我们会丢失我们的observable。
我宁愿不迁移到dojo observables,但在这种情况下我似乎不得不这样做。
我正在继续调查,但看起来我们需要采取行动。
答案 0 :(得分:1)
编辑:虽然这是一个起点,但这不是答案。
看起来有淘汰的道场连接器。
https://github.com/imankulov/knockout-dojo-connector/blob/master/sample.html
但是没有可观察阵列的样本和选择的绑定。
答案 1 :(得分:1)
我不喜欢knockout-dojo-connector的方法。我认为更简洁的方法是将KO绑定保留在标记中,并为dojo类型应用attr绑定。
这样的事情应该有效:
<select id="sel1" data-bind="attr: {'dojoType': dojoTypeInViewModel}">...