Configuration du système: macOS Sierra 10.12.5; chrome 60;
J'essaie de télécharger des données JSON (objet de réponse) en tant que fichier json, mais lorsque j'ai essayé d'y parvenir à l'aide de l'objet File () du navigateur, cela donne une erreur
Failed to construct 'File': Iterator getter is not callable.
ci-dessous est mon code
//`inputData` is the valid response getting from $http.get
var stringifyData = JSON.stringify(inputData);
console.log("stringifyData ", stringifyData);
var file = new File(blob, "filename.json", {type: "text/json;charset=utf-8"});
console.log("file", file);
quel est le problème et pourquoi j'obtiens cette erreur. lorsque j'utilise JSON.stringify(inputData, undefined, 4);
alors il ne donne aucune erreur et affiche l'objet approprié dans la console.
Dans votre cas, la signature du constructeur File
est incorrecte, le premier argument doit être:
Tableau d'objets ArrayBuffer, ArrayBufferView, Blob ou DOMString - ou un mélange de ces objets. Il s'agit du contenu du fichier codé en UTF-8.
https://developer.mozilla.org/en-US/docs/Web/API/File/File#Parameters
new File([blob], "filename.json", {type: "text/json;charset=utf-8"});
Je sais que je suis en retard, mais je suis confronté au même problème, alors j'ai pensé que je devrais publier ma fonction, cela aidera à convertir BLOB en FILE. Merci
imageCropped(event: ImageCroppedEvent) {
this.Files = event.file;
let fileName = new Date().getTime() + ".jpeg";
let filedata = new File([this.Files], fileName, {
type: "image/jpeg",
lastModified: Date.now()
});
console.log(filedata);
}