首先,我不知道我遇到的问题是因为webpack还是电子建设者或其组合。
解决问题。
当我为开发构建时,我能够在package.json文件{"main" : "app/main.js"}
中指定的main.js文件中使用已安装的节点模块。
然而,当我使用电子生成器来创建安装程序时。当我使用安装程序安装应用程序时,我在启动应用程序时收到以下错误消息: Error Message 我的猜测是我收到此消息,因为main.js找不到所需的节点模块。那么如何让它们可用呢?
我希望有一个比我聪明的人,我们更善于谷歌搜索:)
Package.js:
{
"main": "app/main.js",
"scripts": {
"hot-server": "node hot-server.js",
"build-bundle": "rimraf app/dist.release && better-npm-run build-bundle",
"start": "better-npm-run start",
"start-hot": "better-npm-run start-hot",
"backend": "node backend-dummy.js",
"dist-win": "npm run build-bundle && rimraf dist && build --win --ia32",
"dist-mac": "npm run build-bundle && rimraf dist && build --mac"
},
"betterScripts": {
"start": {
"command": "electron ./",
"env": {
"NODE_ENV": "production"
}
},
"start-hot": {
"command": "electron ./",
"env": {
"HOT": 1,
"NODE_ENV": "development"
}
},
"build-bundle": {
"command": "webpack --config webpack.config.production.js --progress --profile --colors",
"env": {
"NODE_ENV": "production"
}
}
},
"bin": {
"electron": "./node_modules/.bin/electron"
},
"build": {
"appId": "app",
"files": [
"dist.release/*",
"dist.resources/*",
"main.js",
"thirdparty/*",
"app.html"
],
"extraFiles": [
"lang/*",
{
"from": "build/extra",
"to": "./",
"filter": "**/*"
}
],
"asar": true
}
答案 0 :(得分:0)
所以我找到了解决问题的方法。我做的是我看了这个项目: https://github.com/chentsulin/electron-react-boilerplate
他们有一个特殊的webpack.config.electron.js文件,它将main.development.js文件的所有node_modules捆绑到一个main.js文件中,该文件包含我们需要的所有内容。然后当电子程序启动时,它使用这个main.js包来运行。要实现这一点,您需要在执行webpack.config.electron.js的package.json文件中添加构建脚本。
我认为通过查看链接项目比理解更容易理解如何解决它。