【发布时间】:2016-01-25 20:39:31
【问题描述】:
好的,所以我创建了我的 IndexedDB,在创建过程中使用“store.put”添加了一些数据。 然后我关闭连接并重新打开连接以使用游标将数据推送到 WinJS 绑定列表:
var myData = new WinJS.Binding.List();
myData.push(cursorp.value);
现在当我“console.log(myData);”我明白了:
[object Object]
myDataStore.js (70,21)
{
[functions]: ,
__proto__: { },
_binding: undefined,
_currentKey: 1,
_keyMap: {
[functions]: ,
1: {
[functions]: ,
__proto__: { },
data: {
[functions]: ,
__proto__: { },
theDay: "F",
id: 1,
listItemN: "My Note.",
day: "1/10/2016"
},
handle: "1",
key: "1"
},
__proto__: { }
},
_keys: [ ],
_lastNotifyLength: 1,
_listeners: null,
_modifyingData: 0,
_notifyId: 0,
_pendingNotifications: null,
_proxy: undefined,
dataSource: { },
length: 1,
onitemchanged: undefined,
oniteminserted: undefined,
onitemmoved: undefined,
onitemmutated: undefined,
onitemremoved: undefined,
onreload: undefined
}
当我尝试执行 ListView 时,我会得到其中包含“未定义”的列表元素。我已经对其进行了更改,以便获得我想要的所有三个项目:
myData.push(cursorp.value.listItemN, cursorp.value.theDay, cursorp.value.day);
但它做同样的事情,每个元素内部都有“未定义”。
我只是没有看到如何从这个绑定列表中提取数据。
这是我正在创建的模板。它通过命名空间从另一个js文件中获取数据的值:
var myListDataInfo = myOwnNamespce.itemList;
var myTemp = (function myTemplate(myPromise) {
return myPromise.then(function(listNote) {
var div = document.createElement("div");
div.className = "myListContainer";
var myListNote = document.createElement("h4");
myListNote.innerText = listNote.myListDataInfo;
div.appendChild(myListNote);
return div;
})
});
任何帮助将不胜感激。 -Rob0
【问题讨论】:
-
我想说的是,对编程的某些方面的绿色/新手会导致这些问题。我已经逐步浏览了代码,发现问题最有可能出在哪里。是时候学习使用 JavaScript 进行异步编程了。稍后再补充。
标签: javascript undefined winjs indexeddb