问题 我如何使用fs与电子反应?


我想用react + webpack + electron来构建一个桌面app.How我可以注入 fs 模块进行反应,以便我可以用它来读取本机文件? 我有一个组件,如:

class Some extends Component {
  render() {
    return <div>{this.props.content}</div>
  }
}
export default Some;

entry.js

import React from 'react';
import { render } from 'react-dom';
import Some from './src/some.jsx';

const data = "some content";
/*
 How can I read data by fs module?
 import fs from 'fs' doesn't work here
*/
render(
  <Some content={data} />,
  document.getElementById('app')
);

我使用webpack将js代码构建到bundle.js和index.html中

...
<div id="app"></div>
<script src="bundle.js"></script>
...

webpack.config.js

...
plugins: [new webpack.IgnorePlugin(new RegExp("^(fs|ipc)$"))]
...

我在互联网上找到这个配置,因为如果我不添加它,webpack将报告错误,但我不知道这意味着什么。

而且我很容易 main.js 这与electron-quick-start的main.js相同

我会失去一些重要的东西吗?

如果你能在github repo上提供一个已有的例子,那就更好了。

非常感谢!!


10819
2018-02-16 09:31


起源



答案:


使用 window.require() 代替 require()

const fs = window.require('fs');

11
2018-06-09 10:03





最容易做的事情就是使用 的WebPack-目标电子渲染器,你可以找到使用它的例子 电子反应-样板


5
2018-02-16 16:43



是的,它有效。非常感谢 - caibirdme


答案:


使用 window.require() 代替 require()

const fs = window.require('fs');

11
2018-06-09 10:03





最容易做的事情就是使用 的WebPack-目标电子渲染器,你可以找到使用它的例子 电子反应-样板


5
2018-02-16 16:43



是的,它有效。非常感谢 - caibirdme