Electron和Webpack ENOENT:没有这样的文件或目录,打开“/path.txt”

我是一个初学者试图使用与Webpack捆绑在一起的Electron(以前的Atom)和Reactjs。 一切工作正常,直到我试图使用Electron的远程模块访问我的React组件中的mainWindow。

尝试导入这个模块,我得到臭名昭着的错误: Uncaught Error: ENOENT: no such file or directory, open '/path.txt'

我试过重新安装电子,我检查了node_modules / electron,发现path.txt在那里。

这是我的webpack.config.js:

 var webpack = require('webpack'); module.exports = { context: __dirname, entry: { app: ['webpack/hot/dev-server', './src/App.jsx'], }, target: 'node', output: { path: './public/built', filename: 'bundle.js', publicPath: 'http://localhost:8080/built/' }, devServer: { contentBase: './public', publicPath: 'http://localhost:8080/built/' }, module: { loaders: [ { test: /\.jsx?$/, loader: 'babel-loader', exclude: /node_modules/, include: /src/, query: { presets: ['es2015', 'react'] } }, { test: /\.(png|jpg)$/, loader: 'file-loader?name=[path][name].[hash].[ext]' }, { test: /\.css$/, loader: 'style-loader!css-loader' } ] }, plugins: [ new webpack.HotModuleReplacementPlugin() ] } 

这里是我的package.json:

 { "name": "app", "version": "0.1.0", "main": "main.js", "description": "description", "license": "UNLICENSED", "repository": { "type": "git", "url": "https://github.com" }, "scripts": { "start": "./node_modules/.bin/electron .", "watch": "./node_modules/.bin/webpack-dev-server" }, "dependencies": { "electron": "^1.3.5", "radium": "^0.17.1", "react": "^15.0.1", "react-dom": "^15.0.1" }, "devDependencies": { "babel": "^6.5.2", "babel-core": "^6.7.7", "babel-loader": "^6.2.4", "babel-preset-es2015": "^6.6.0", "babel-preset-react": "^6.5.0", "css-loader": "^0.24.0", "file-loader": "^0.9.0", "style-loader": "^0.13.1", "webpack": "^1.13.0", "webpack-dev-server": "^1.14.1" } } 

我怀疑它可能与package.json中的启动脚本有关,因为path.txt与node_modules / .bin / electron不在同一目录中。 不过,我还没有想出如何解决这个问题。

如果不是迟到,你只需要在webpack.config.js中用“electron-renderer”replace你的“node”目标

就像下面那样运行命令

 cd node_modules/electron && node install.js 

它会创buildpath.txt文件

对于Mac文件包含如下

 dist/Electron.app/Contents/MacOS/Electron