你好,我在选择图片时使用的是Compressorjs插件,然后发出问题
https://www.npmjs.com/package/compressorjs
我的代码是:-
window.resolveLocalFileSystemURL(
imageData,
fileEntry => {
fileEntry.file(file => {
console.log(file);
new Compressor(file, {
quality: 0.6,
success: result => {
console.log(result, result.size);
},
error: err => {
console.log(err);
}
});
});
},
err => {
console.log(err);
}
);
答案 0 :(得分:0)
cordova文件实例与Twitter documentation不同,cordova创建类似于对象的文件,但与var url = 'https://api.twitter.com/1.1/users/search.json'
var username = 'username'
var q = '?q=' + username
var response = service.fetch(url + q, {
method: 'get',
});
var result = JSON.parse(response.getContentText());
Logger.log(JSON.stringify(result, null, 2));
不同,因为cuz compressorjs可能只具有File和Blob的知识,而不具有cordova文件的知识
此插件定义了全局cordova.file对象。
尽管在全局范围内,但直到deviceready事件之后才可用。
我对Cordova或Compressorjs知之甚少,但在我看来,您可以在something instanceOf File
事件之后加载Compressorjs
答案 1 :(得分:0)
正如@endless所说,您不能使用cdvfile路径,因为它是一个自定义文件路径处理程序,但是您可以将cdvfile路径更改为本机路径
它在文档https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-file/上的标题Converting cdvfile:// to native path
下
document.addEventListener("deviceready", function(){
resolveLocalFileSystemURL('cdvfile://localhost/temporary/path/to/file.mp4',
function(entry) {
var nativePath = entry.toURL();
console.log('Native URI: ' + nativePath);
}
);
}, false);