J'ai
import fs from 'fs'
et dans mon package.json j'ai
Puis je lance la commande
> npm i fs
> [email protected] node_modules/fs
ensuite dans mon magasin React, j'importe le module 'fs'
import fs from 'fs'
Cependant, lorsque j'essaie d'utiliser fs
Je ne vois pas de méthodes sauf pour constructeur et quelques autres méthodes. Je ne vois pas la méthode createReadStream ni aucune autre méthode de manipulation de fichier.
Est-ce que quelqu'un sait ce qui ne va pas? (en utilisant Webpack) et peut donner plus d’informations sur demande, mais j’en suis aussi loin ...
ps: pourquoi est-ce que je peux npm i fs --save quand je lis sur d'autres articles que je n'ai pas à le faire (en utilisant le noeud 5.5.0)
import Reflux from 'reflux'
import AddItemActions from '../actions/AddItemActions'
import request from 'superagent-bluebird-promise'
import fs from 'fs'
var ImageStore = Reflux.createStore({
init(){
.
.
.
},
decryptImage(file) {
var reader = new FileReader();
var info = {}
reader.onload = (output) => {
debugger
request.post("https://camfind.p.mashape.com/image_requests")
.set("X-Mashape-Key", "KEY")
.set("Content-Type", "application/x-www-form-urlencoded")
.set("Accept", "application/json")
.send({'focus': { 'x': 480}})
.send({'focus': { 'y': 640}})
.send({'image_request': {'altitude': 27.912109375}})
.send({'image_request': {'language': "en"}})
.send({'image_request': {'latitude': 35.8714220766008}})
.send({'image_request': {'locale' : "en_US"}})
.send({'image_request': {'longitude': 14.3583203002251}})
.send({'image_request': {'image': fs.createReadStream("/path" + 'file.jpg')}})
.then(function (result) {
console.log(result.status, result.headers, result.body);
this.info = result
},
function(error) {
console.log(error);
})
}
reader.readAsDataURL(file);
return info
},
.
.
.
.
})
Dans create-react-app
ils ont écrasé 'fs'. Vous ne pouvez pas l'importer . Ils l'ont fait parce que fs
est un module de base de nœud.
Vous devrez trouver une autre solution à ce problème. Voir ce billet.
Il est possible que cela soit un problème d'environnement. Il n'est pas possible pour le navigateur d'interpréter et d'exécuter des modules côté serveur tels que fs
.
La solution consiste à exécuter les méthodes fs
dans un environnement Node (côté serveur) ou à rechercher un package offrant les mêmes fonctionnalités, mais écrit pour le navigateur.
C'est discuté dans cette question ... Module non trouvé: Erreur: Impossible de résoudre le module 'fs'
Et cette question ... Utilisez le module fs dans React.js, node.js, webpack, babel, express