【问题标题】:Uncaught Reference Error: LocalFileSystem not defined未捕获的引用错误:未定义 LocalFileSystem
【发布时间】:2015-07-01 19:47:35
【问题描述】:

这个问题以前在这个论坛上被问过,但我找不到满意的解决方案。因此再次提出问题。 我正在尝试从 Internet 下载文件并将其存储到手机上的本地文件系统中。我收到以下错误:

Uncaught ReferenceError: LocalFileSystem is not defined

我目前的代码是:

function storeFile(bucketName, csvfile){
   var region;
   s3Client.getBucketLocation(params = {Bucket: bucketName},function(err,data){
       if(err) console.log("Error :: Cannot retrieve bucket location", err);
       else {
          console.log(data);
          region = data;
       }
    });

   var url = "http://s3-"+region+".amazonaws.com/"+bucketName+"/"+csvfile;
   window.requestFileSystem(LocalFileSystem.PERSISTENT,0,
     function(fs){
       filePath = fs.root.fullPath + "/" + csvfile;
       fileTransfer = new FileTransfer();
       fileTransfer.download(url, filePath, 
        function (entry) {
          console.log(entry.fullPath); // entry is fileEntry object
        }, 
        function (error) {
           console.log("Some error");
        });
    }, function(err){
       console.log("Request File System failure");
   });
}

我需要在我的应用程序中添加任何插件吗?我已经添加了 File 和 FileTransfer 插件。顺便说一下,这个函数是在 onDeviceReady 被触发后调用的。

已编辑: 我没有使用 AngularJs。我的代码在 NodeJs 上。其次,我没有像离子框架等可能会出现问题的依赖项。相同的代码已在其他已成功下载和存储的数据上进行了测试。在我将代码更改为从亚马逊服务器上的特定位置下载后,出现了问题。如果有人可以为我解决这个问题,那就太好了。我可以通过代码访问存储桶和区域。唯一的问题是 LocalFileSystem。

【问题讨论】:

标签: javascript cordova amazon-s3 cordova-plugins


【解决方案1】:

能够解决问题。刚刚删除并重新添加了文件和文件传输插件。

cordova plugin rm org.apache.cordova.filecordova plugin rm org.apache.cordova.file-transfer 删除。

cordova plugin add org.apache.cordova.filecordova plugin add org.apache.cordova.file-transfer 添加。

它可能会告诉您这些插件很快就会被弃用或类似的东西。您还可以选择使用更高版本。要添加,您可以使用

cordova plugin add cordova-plugin-filecordova plugin add cordova-plugin-file-transfer。只需检查它们是否在平台文件夹中的相应构建下可用。

【讨论】:

    猜你喜欢
    • 2013-10-27
    • 2011-09-25
    • 2021-11-01
    • 2017-11-22
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多