Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Cordova:未捕获引用错误:未定义文件传输_Javascript_Jquery_Cordova_File Transfer - Fatal编程技术网

Javascript Cordova:未捕获引用错误:未定义文件传输

Javascript Cordova:未捕获引用错误:未定义文件传输,javascript,jquery,cordova,file-transfer,Javascript,Jquery,Cordova,File Transfer,我想从服务器下载一个PDF文件,并将其保存到该设备的本地存储中。 要做到这一点,我已经找到了答案 运行这段代码: var fileTransfer = new FileTransfer(); var uri = encodeURI("http://example.com/file.pdf"); var fileURL = "/Martin/Downloads/"; function openDocument() { fileTransfer.download( uri,

我想从服务器下载一个PDF文件,并将其保存到该设备的本地存储中。 要做到这一点,我已经找到了答案

运行这段代码:

var fileTransfer = new FileTransfer();
var uri = encodeURI("http://example.com/file.pdf");
var fileURL = "/Martin/Downloads/";

function openDocument() {
   fileTransfer.download(
    uri,
    fileURL,
    function(entry) {
        console.log("download complete: " + entry.toURL());
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
    },
    false,
    {
        headers: {
            "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
        }
    }
);
}
给了我这个问题:

未捕获引用错误:未定义文件传输

我已经删除了所有平台并重新安装了它们。 之后,我删除了所有插件并重新安装

一个相似的人帮不了我


我还能做什么?

不是函数,而是在调用device ready之前运行的变量初始化

以下是对我有用的代码:

document.addEventListener("deviceready", onDeviceReady, false);

var fileTransfer;
var uri;
var fileURL;

// use file transfer after onDeviceReady() was called         
function onDeviceReady() {
    fileTransfer = new FileTransfer();
    uri = encodeURI('http://example.com/file.pdf');
    fileURL = '/file.pdf';
}

function openDocument() {

   fileTransfer.download(
    uri,
    fileURL,
    function(entry) {
        alert("download complete: " + entry.toURL());
        console.log("download complete: " + entry.toURL());
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
        alert("download error source " + error.source);
    },
    false
);
}

不是函数,而是在调用deviceready之前运行的变量的init

以下是对我有用的代码:

document.addEventListener("deviceready", onDeviceReady, false);

var fileTransfer;
var uri;
var fileURL;

// use file transfer after onDeviceReady() was called         
function onDeviceReady() {
    fileTransfer = new FileTransfer();
    uri = encodeURI('http://example.com/file.pdf');
    fileURL = '/file.pdf';
}

function openDocument() {

   fileTransfer.download(
    uri,
    fileURL,
    function(entry) {
        alert("download complete: " + entry.toURL());
        console.log("download complete: " + entry.toURL());
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
        alert("download error source " + error.source);
    },
    false
);
}

不是函数,而是在调用deviceready之前运行的变量的init

以下是对我有用的代码:

document.addEventListener("deviceready", onDeviceReady, false);

var fileTransfer;
var uri;
var fileURL;

// use file transfer after onDeviceReady() was called         
function onDeviceReady() {
    fileTransfer = new FileTransfer();
    uri = encodeURI('http://example.com/file.pdf');
    fileURL = '/file.pdf';
}

function openDocument() {

   fileTransfer.download(
    uri,
    fileURL,
    function(entry) {
        alert("download complete: " + entry.toURL());
        console.log("download complete: " + entry.toURL());
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
        alert("download error source " + error.source);
    },
    false
);
}

不是函数,而是在调用deviceready之前运行的变量的init

以下是对我有用的代码:

document.addEventListener("deviceready", onDeviceReady, false);

var fileTransfer;
var uri;
var fileURL;

// use file transfer after onDeviceReady() was called         
function onDeviceReady() {
    fileTransfer = new FileTransfer();
    uri = encodeURI('http://example.com/file.pdf');
    fileURL = '/file.pdf';
}

function openDocument() {

   fileTransfer.download(
    uri,
    fileURL,
    function(entry) {
        alert("download complete: " + entry.toURL());
        console.log("download complete: " + entry.toURL());
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
        alert("download error source " + error.source);
    },
    false
);
}


你安装插件了吗?您是否在index.html中包含cordova.js?在尝试使用该插件之前,是否正在等待设备就绪事件?是否确定在启动deviceReady后正在访问该插件?我使用以下命令安装了该插件:cordova plugin add cordova plugin file。完成后,我做了:cordova插件添加cordova插件文件传输。命令cordovaplugin表示插件已安装。Cordova也包含在标题中。我如何检查插件是否在就绪事件之前使用?这可能是您如何测试插件的问题?您是在模拟器、浏览器中运行它,还是构建并部署到设备等?我给出的代码在onClick()函数中。因此,当我单击按钮时,可以运行它。要做到这一点,设备必须准备好。还是我错过了什么?你安装插件了吗?您是否在index.html中包含cordova.js?在尝试使用该插件之前,是否正在等待设备就绪事件?是否确定在启动deviceReady后正在访问该插件?我使用以下命令安装了该插件:cordova plugin add cordova plugin file。完成后,我做了:cordova插件添加cordova插件文件传输。命令cordovaplugin表示插件已安装。Cordova也包含在标题中。我如何检查插件是否在就绪事件之前使用?这可能是您如何测试插件的问题?您是在模拟器、浏览器中运行它,还是构建并部署到设备等?我给出的代码在onClick()函数中。因此,当我单击按钮时,可以运行它。要做到这一点,设备必须准备好。还是我错过了什么?你安装插件了吗?您是否在index.html中包含cordova.js?在尝试使用该插件之前,是否正在等待设备就绪事件?是否确定在启动deviceReady后正在访问该插件?我使用以下命令安装了该插件:cordova plugin add cordova plugin file。完成后,我做了:cordova插件添加cordova插件文件传输。命令cordovaplugin表示插件已安装。Cordova也包含在标题中。我如何检查插件是否在就绪事件之前使用?这可能是您如何测试插件的问题?您是在模拟器、浏览器中运行它,还是构建并部署到设备等?我给出的代码在onClick()函数中。因此,当我单击按钮时,可以运行它。要做到这一点,设备必须准备好。还是我错过了什么?你安装插件了吗?您是否在index.html中包含cordova.js?在尝试使用该插件之前,是否正在等待设备就绪事件?是否确定在启动deviceReady后正在访问该插件?我使用以下命令安装了该插件:cordova plugin add cordova plugin file。完成后,我做了:cordova插件添加cordova插件文件传输。命令cordovaplugin表示插件已安装。Cordova也包含在标题中。我如何检查插件是否在就绪事件之前使用?这可能是您如何测试插件的问题?您是在模拟器、浏览器中运行它,还是构建并部署到设备等?我给出的代码在onClick()函数中。因此,当我单击按钮时,可以运行它。要做到这一点,设备必须准备好。还是我错过了什么?