現在、PDFMakeを使用して作成したPDFを書き込み、そのファイルを電子メールに添付しようとしています。私はこれをしようと6時間を費やして、私は間違いを取得し続けます。イオン2ファイルストレージ
以下は、PDFをエクスポートするための私のコードです。私は、createPDF.open()を使用してサーブ内のPDFをテストし、うまくいきました。私はまた、コンソールにBase64データを印刷しました。ここで
exportPDF() {
console.log("ExportPDF()")
this.pdf = pdfMake;
// For use in browser(web)
//this.pdf.createPdf(getDocDefinition(this.issues, this.project, this.report)).open();
let data : string;
let newPDF;
this.pdf.createPdf(getDocDefinition(this.issues, this.project, this.report)).getBase64((buffer) => {
data = buffer;
console.log("newPDF: " + data)
});
// this.pdf.createPdf(getDocDefinition(this.issues, this.project, this.report)).getBuffer((buffer) => {
// data = buffer.toArrayBuffer();
// console.log("newPDF: " + data)
// });
// Platforms
if (this.plat.is('ios')) {
console.log("Platform: ios")
let file = "testFingering.pdf"
console.log(cordova.file.cacheDirectory);
File.removeFile(cordova.file.cacheDirectory, file);
File.writeFile(cordova.file.cacheDirectory, file, data).then(() => {
// Success!
console.log("writeFile: success!")
SocialSharing.share("tits", "tits", cordova.file.cacheDirectory + file).then(() => {
// Success!
console.log("shareViaEmail: success!")
}).catch((err) => {
// Error!
console.log("shareViaEmail: fail! " + err)
});
}).catch((err) => {
// Error!
console.log("writeFile: fail! " + JSON.stringify(err));
});
} else if (this.plat.is('android')) {
console.log("Platform: android")
} else if (this.plat.is('windows')) {
console.log("Platform: windows")
} else {
console.log("Platform: web")
}
}
私が受けていたエラーは以下のとおりです。
2017-01-31 20:40:12.997343 CMTA[1725:417453] writeFile: fail! {"code":12,"message":"PATH_EXISTS_ERR"}
2017-01-31 20:40:13.013456 CMTA[1725:417453] writeFile: fail! {"code":"Invalid parameter type"}
私は一度だけ、このコードを実行していますので、1)私は、なぜそれが2つのエラーをログに記録されるかわかりません。
2) "PATH_EXISTS_ERR"はパスが既に存在することを意味しますが、コードを見ると、ファイルを削除して毎回作成しています。
3)入力するパラメータは何ですか?それは "テキスト"を受け入れると言いますが、別のものを使用していなければなりませんか?私はこのアプリケーションのIonic 1バージョンで何をしたのかという理由で、前にToBufferArray()を試しましたが、それはもう動作しません。
私はこれが終わりに私をイライラさせるので、私は大いに助けていただきたいと思います。