window.jkLocalNotes.getNotes = function(callback, errorCallback) {
//创建notes目录
plus.io.resolveLocalFileSystemURL('_doc', function(ent) {
ent.getDirectory('notes', {
crate: true
},
//成功打开或创建 notes 目录实体
function(notesEnt) {
var filesReder = ent.createReader();
filesReder.readEntries(function(fileEnts) {
var status = {
j: 0,
k: 0,
callback: callback,
notes: []
};
for (var i = 0; i < fileEnts.length; i++) {
var fileEnt = fileEnts[i];
if (fileEnt.isDirectory || !/^notes\.[0-9]+\.jknote$/.test(fileEnt.name)) {
continue;
}
fileEnt.file(
//获取file对象
function(fileObj) {
if (fileObj.size <= 0) {
return;
}
status.j++;
var fileReader = new plus.io.FileReader();
fileReader.onload = function(e) {
status.notes.push(JSON.parse(e.target.result));
status.k++;
};
fileReader.onerror = function(err) {
status.k++;
jk.log(err.message);
}
fileReader.readAsText(fileObj);
}
);//fileEnt.file
}//for 遍历实体
(function wait(status) {
if (status.j == status.k) {
typeof(status.callback) == 'function' && status.callback(status.notes);
} else {
setTimeout((function(status) {
return function() {
wait(status);
}
})(status), 10);
}
})(status);
});
},
//创建或打开notes目录失败
function (e){
//代码执行在此处, e.message = 路径不存在
typeof(errorCallback) == 'function' && errorCallback(e);
});
});
}
'_doc'目录却可以获取文件列表, 说明_doc是存在的, notes不存在为啥不创建? 昨天还能正常使用, 真是一朵奇葩
0 个回复