我有
import fs from 'fs'
在我的package.json中我有
然后我运行命令
> npm i fs
> fs@0.0.2 node_modules/fs

接下来在我的React商店中我导入了#fs'模块
import fs from 'fs'

但是当我尝试使用fs时
除了构造函数和其他几个__方法之外,我没有看到方法。我没有看到createReadStream方法或任何其他文件操作方法。
有人知道出了什么问题吗? (使用Webpack)并可以根据要求提供更多信息,但我到目前为止......
ps:为什么我可以npm i fs - 当我在其他帖子上阅读时我不必这样做(使用节点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 :(得分:6)
在create-react-app
他们已经删除了'fs'。你无法导入它。
他们这样做是因为fs
是节点核心模块
你必须找到解决这个问题的另一种方法。见this ticket.
答案 1 :(得分:1)
这可能是一个环境问题。浏览器无法解释和运行某些节点服务器端模块,如fs
。
解决方案是在Node环境(服务器端)中运行fs
方法,或者找到一个提供相同功能但为浏览器编写的包。
在这个问题中讨论过...... Module not found: Error: Cannot resolve module 'fs'
这个问题...... Use fs module in React.js,node.js, webpack, babel,express