2016-01-25 21 views
6

mamReact Js wymagają 'fs'

import fs from 'fs' 

iw moim package.json mam

Potem uruchom polecenie

> npm i fs 
 
> [email protected] node_modules/fs

następny w mój sklep React importuję moduł "fs"

import fs from 'fs'

Jednak gdy próbuję użyć fs

nie widzę metody za wyjątkiem konstruktora i kilku innych __methods. Nie widzę metody createReadStream ani innych metod manipulacji plikami.

Czy ktoś wie, co jest nie tak? (używając Webpacka) i mogę podać więcej informacji na żądanie, ale dostaję się tak daleko ...

ps: dlaczego mogę npm i fs - zapisz gdy czytam inne posty, których nie mam aby to zrobić (za pomocą węzła 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 
 
    }, 
 
    . 
 
    . 
 
    . 
 
    . 
 
})

+0

Możliwe dupe http://stackoverflow.com/questions/24594796/node-js-npm-install-fs-error. fs jest częścią modułów rdzeniowych węzła. –

+0

Czego się tu spodziewasz? 'fs' jest modułem węzła, który działa z systemem plików. Większość jego metod nie działa w przeglądarce. –

+0

Och, widzę ... myślałem, że mogę dołączyć dowolny pakiet węzłów w mojej aplikacji reagowania ... więc czy istnieje odpowiednik dla Javascript? – joe

Odpowiedz

0

jest możliwe, to może być problem środowisko. Przeglądarka nie może interpretować i uruchamiać niektórych modułów serwera po stronie węzła, takich jak fs.

Rozwiązaniem jest uruchomienie metod fs w środowisku węzłów (po stronie serwera) lub znalezienie pakietu oferującego tę samą funkcjonalność, ale napisanego dla przeglądarki.

To omówione w tej kwestii ... Module not found: Error: Cannot resolve module 'fs'

I to pytanie ... Use fs module in React.js,node.js, webpack, babel,express

+0

Oto świetny wątek na temat integracji funkcjonalności fs po stronie klienta. https://stackoverflow.com/questions/46467858/manipulating-the-local-file-system-with-browser- based-javascript-and-node –

Powiązane problemy