我正在将应用程序从dojo 1.5升级到1.7。此应用程序有几个由ItemFileReadStores支持的FilteringSelects。如,
this.docTypeSel = this.adopt(dijit.form.FilteringSelect, {
name: "docType",
autoComplete: true
}, document.createElement("select"));
this.docTypeSel.placeAt(this.formNode);
var url = dojo.moduleUrl("imed", "DocumentTypes.txt");
this.documentTypeStore = new dojo.data.ItemFileReadStore({ url: url, urlPreventCache: "true" });
this.docTypeSel.store = this.documentTypeStore;
在1.7中,this.docTypeSel.set('value',foo)
的来电在尝试拨打this.store.get(value)
时失败。我的理解是这是新的dojo / store API。在旧的dojo.data API和新的dojo / store API之间是否存在某种适配器?如果没有,ItemFileReadStore的推荐替代品是什么。 dojo / store / Memory似乎很接近,但似乎没有办法从网址中提取数据。
答案 0 :(得分:2)
您是否考虑过使用dojo/store/DataStore?我没有亲自使用它,但它似乎是您想要使用的,因为dijit/form/FilteringSelect
使用dojo/store
API查找商店。
另一方面,dijit / form / Select需要dojo/data
实现。如果您希望dojo/store
实施dijit/form/Select
,则可以使用{{1}}。