Ich versuche das Problem zu verstehen, mit dem ich feststecke. Ich mache eine Anwendung für Android über Cordova. Ich suchte nach einer Lösung, aber ich habe es nicht wirklich gefunden.Uncaught ReferenceError: LocalFileSystem ist nicht definiert
Erstens hatte ich ein Problem mit "requestFileSystem", das nicht definiert wurde, aber es scheint jetzt behoben zu sein. Sobald ich dieses Problem behoben habe, wurde das Problem in eine andere Funktion verschoben.
Ich habe im Grunde einen Knopf, schaffen sollte, speichern (und möglicherweise zeigen), um eine PDF:
<!--Button to generate PDF-->
<div data-role="collapsible" data-inset="false" data-mini="true">
<h3>Reports</h3>
<div>
<a href="javascript:pdfCreation()" class="button"data-role="button" id="PageUnitButtonGeneratePDIReport">Generate PDI Report</a>
<!--<iframe width="100%" height="500px" id="pdfOutContainer"></iframe>-->
</div>
</div>
Und das ist mein JS-Code, der das Problem enthalten:
function pdfCreation() {
//FIRST GENERATE THE PDF DOCUMENT ON TABLET, DOESN'T SHOW
console.log("generating pdf...");
var doc = new jsPDF();
doc.text(20, 20, 'HELLO!');
doc.setFont("courier");
doc.setFontType("normal");
doc.text(20, 30, 'This is a PDF document generated using JSPDF.');
doc.text(20, 50, 'YES, Inside of PhoneGap!');
var pdfUriString = doc.output('datauristring');
console.log(pdfUriString);
var pdfOutContainer = jQuery("#pdfOutContainer");
pdfOutContainer.attr("src", pdfUriString);
//NEXT SAVE IT TO THE DEVICE'S LOCAL FILE SYSTEM
console.log("file system...");
//requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
console.log(fileSystem.name);
console.log(fileSystem.root.name);
console.log(fileSystem.root.fullPath);
fileSystem.root.getFile("test.pdf", {create: true}, function(entry) {
var fileEntry = entry;
console.log(entry);
entry.createWriter(function(writer) {
writer.onwrite = function(evt) {
console.log("write success");
};
console.log("writing to file");
writer.write(pdfOutput);
},
function(error) {
console.log(error);
});
},
function(error){
console.log(error);
});
},
function(event){
console.log(evt.target.error.code);
});
}
Die Funktion, die hat das Problem ist PDFCreation. Ich füge das jdfiddle hier hinzu, nur für den Fall, dass es nützlich sein könnte.
https://jsfiddle.net/antus2f0/
Wenn jemand mir helfen kann, wäre schön! Danke.
Vielen Dank für Ihre Antwort. Der Fehler, den ich jetzt habe, ist ein bisschen anders, aber ich habe es bereits während mehrerer Tests gefunden, die ich gemacht habe. "Uncaught ReferenceError: LocalFileSystem ist nicht definiert" –