I'm trying to read a local file using the cordova-file-plugin. At the moment I'm able to read the content of local directories and select a single file. But I have problems to get the content of the file.
Here's my function that's called by clicking a button after selecting a file from list:
import() {
window.resolveLocalFileSystemURL(this.file.nativeURL, this.gotFile, this.fail);
}
And here're the two functions gotFile and fail:
fail(e) {
console.log(e);
}
gotFile(fileEntry) {
var file = fileEntry.nativeURL;
fileEntry.file(function(file) {
var reader = new FileReader();
reader.onloadend = function(e) {
console.log('onloadend()');
};
reader.readAsText(file);
console.log(reader);
});
}
I can see in the log the reader with all the wanted content of my file under result, but I'm not able to get it and use it. The readyState is 2, but all inside reader.onloadend isn't called. With Ionic 1 this code works without any problems.
I would be very glad, if there's anyone how can help me. Thanks in advance!
Known issue in ionic 2
Loading zone.js before cordova.js fixes it.
Specific to ionic2 maintain this sequence order.
<script src="build/polyfills.js"></script> <script src="cordova.js"</script>
as the polyfills.js executes the zone.js.
Although I haven't used onloadend
, I've been successfully using the onload
event handler instead in Ionic 2, maybe you could give that one a try.
Keep in mind that it will return only if the operation is successful.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With