我有一个应用程序在本周工作正常,我不知道突然改变了什么。
请考虑以下代码。第一个“console.log”输出正确,但其他任何一个都没有输出任何东西。
console.log('requesting file system');
try {
requestFileSystem(1, 1024*1024, function(fs) {
console.log('file system received. requesting root directory');
fs.root.getDirectory( options.name, {create:true}, function( directory ) {
console.log('root directory received');
filesystems[options.name] = directory;
console.log('calling callback');
if ( callback ) me.fn( me.name, callback ).call( me, me );
console.log('callback called');
}, function(e) {
console.log('error handler 1');
console.log(e);
});
}, function(e) {
console.log('error handler 2');
console.log(e);
});
}
catch(e) {
console.log('error handler 3');
console.log(e);
}
任何想法要找什么?
答案 0 :(得分:1)
通过启动一个全新的应用程序,复制www目录,从已损坏的应用程序重新安装所有插件,我已经“解决了”这个问题。
我不知道有什么问题,但这个干净的安装现在工作正常。
答案 1 :(得分:0)
这个问题很多都面临着,源于cordova nativetoJSbridge的一个错误。 它已在3.6.0中标记为固定,但从未在该版本中使用过。特定版本之上的几个版本可以使用。
cordova
安装最新npm
并使用CLI
创建新项目。cordova plugin add
命令将文件api添加到新项目中。window.requestFileSystem
问题。如果您使用的是CLI,那就更好了。从CLI创建一个新项目并将旧项目源复制到新项目并使用CLI添加插件或使用CLI更新项目。
作为旁注,这个错误已经存在了一段时间,问题似乎就出现了
NativeToJsMessageQueue
https://issues.apache.org/jira/browse/CB-6761
虽然从它读取的错误中得不到解决,但它已在3.6.x以上的最新版本中得到修复