我正在尝试使用reactJS和nodeJs在文件中写入一些内容,但是它不起作用。这是我的代码,很简单,我知道fs.writeFile不是函数。我从fs使用的每个函数都收到此错误。在node_module中,我有用于fs的文件夹,但是在内部,我只有package.json和自述文件。我不知道该怎么办,我在网上搜索了答案,但一无所获。任何帮助都很棒
import React, { Component } from 'react'
const fs = require('fs');
export default class WriteFile extends Component {
write = () => {
fs.writeFile("file.txt", "Hey there!", function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});
}
render() {
return (
<div>
<button className='btn btn-info' onClick={this.write}>scria-ti-as</button>
</div>
)
}
}
和错误
TypeError: fs.writeFile is not a function
WriteFile._this.write
D:/js/login_reactjs/src/components/WriteFile.js:8
5 | export default class WriteFile extends Component {
6 |
7 | write = () => {
8 | fs.writeFile("file.txt", "Hey there!", function(err) {
9 | if(err) {
10 | return console.log(err);
11 | }
答案 0 :(得分:1)
fs在浏览器中不起作用。这是设计使然。 fs已被存出,请参见this ticket
使用支持browserify或browserFS之类的浏览器的程序包会更好一些
答案 1 :(得分:0)
在浏览器中,您应该使用File API访问文件-https://www.html5rocks.com/en/tutorials/file/dndfiles/
也请看一下https://electronjs.org/,它允许您在类似“本机”的react应用中使用像fs这样的nodejs API。