2016-11-20 7 views
2

Ich erstelle eine App von Backbone js, dass, wenn gesendet wird, Formulardaten in einer TXT-Datei gespeichert werden. Es funktioniert ordnungsgemäß in Windows. hier ist mein Code:Speichern Sie Formulardaten in der mobilen App

var pom = document.createElement('a'); 
pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(mytext)); 
pom.setAttribute('download', filename); 
pom.style.display = 'none'; 
document.body.appendChild(pom); 
pom.click(); 
document.body.removeChild(pom); 

dann habe ich eine APK von Cordova. Wenn ich die APK auf meinem Handy installiere und das Formular absende, wird die TXT-Datei nicht auf meinem Handy gespeichert. Was ist das Problem? gibt es eine andere Möglichkeit, Formulardaten in meiner App auf dem Handy zu speichern?

Antwort

0

Sie müssen das Datei-Plugin verwenden, um Dokumente auf Ihrem Gerät zu speichern.

https://github.com/apache/cordova-plugin-file

Beachten Sie die Unterschiede zwischen den Betriebssystemen in Bezug auf, wo die Dateien gespeichert werden sollen.

Einige Beispiel-Code unten:

function writeToFile(fileName, data) { 
window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, function (directoryEntry) { 
    directoryEntry.getFile(fileName, { create: true }, function (fileEntry) { 
     fileEntry.createWriter(function (fileWriter) { 
      fileWriter.onwriteend = function (e) { 
       // for real-world usage, you might consider passing a success callback 
       console.log('Write of file "' + fileName + '" completed.'); 
      }; 
      fileWriter.onerror = function (e) { 
       // you could hook this up with our global error handler, or pass in an error callback 
       console.log('Write failed: ' + e.toString()); 
      }; 
      var blob = new Blob([data], { type: 'text/plain' }); 
      fileWriter.write(blob); 
     }, errorHandler.bind(null, fileName)); 
    }, errorHandler.bind(null, fileName)); 
}, errorHandler.bind(null, fileName)); 
} 

Diese eine Datei erstellt schreibt dann die Variable in die Datei mit dem Namen Daten. und gibt ihm einen Dateinamen, den ich ihm geben möchte.

Verwandte Themen