我使用了cordova的FileTransfer
插件和ionic-native
包装器。该应用程序在iPhone模拟器中成功运行,但当我在移动设备中运行应用程序时,我在控制台中收到错误:
ORIGINAL EXCEPTION: ReferenceError: Can't find variable: FileTransfer
。
调查结果:
FileTransfer
会返回其对象。所以,很明显它已被初始化file-transfer
插件才会产生问题。使用的插件
cordova-plugin-camera
cordova-plugin-datepicker
cordova-plugin-file-transfer
cordova-plugin-whitelist
规格:
代码:
import {Injectable} from '@angular/core';
import {Transfer} from 'ionic-native';
@Injectable()
export class MyClass {
fileTransfer = new Transfer();
constructor(){
}
public upload (url: string, image: string, onProgress: any, opt?: any){
let options = {
fileKey: "file",
mimeType: "image/png",
chunkedMode: false
}
this.fileTransfer.onProgress(onProgress);
return this.fileTransfer.upload(image, this.baseUrl + url, options);
}
}
答案 0 :(得分:0)
卸载所有插件并只运行ionic run ios
命令修复了此问题。由于ionic state reset
也做同样的事情,这可能是CLI的问题。