在不使用webpack的情况下,打包时如何区分测试环境和正式环境?
来源:10-4 云文件操作类编码(一)

慕仙6119268
2020-07-13
1.在package.json中
2.我在主进程main.js中
结果是,在运行npm run dev 中可以拿到process.env.NODE_ENV,但是打包后,项目直接无法被打开
写回答
2回答
-
张轩
2020-07-21
同学你好 对不起 你的回复提醒我没有看到,
其实有更简单的方法。刚才我试了一下
在开发环境中,你可以使用 cross-env 设置环境变量 这个你做到是没问题的
cross-env NODE_ENV=test electron .
这时候在代码中 main.js 中拿到 process.env.NODE_ENV 是等于你设置的值(test)的。
当打包的时候,
"pack": "electron-builder --dir", "dist": "electron-builder",
就是运行 electron-builder 的时候(不需要加任何参数),它这个 process.env.NODE_ENV 会自动的帮你设置成 production。就这样我们就区分了开发环境和打包环境。
其实更简单的方法就是使用 我课中使用的 electron-is-dev 这个库
const isDev = require('electron-is-dev') const urlLocation = isDev ? 'http://localhost:3000' : `file://${path.join(__dirname, './index.html')}`
012020-07-28 -
张轩
2020-07-14
同学你好
electron builder 可以支持环境变量,文档在这里:https://www.electron.build/configuration/configuration#environment-variables-from-file
简单来说就是在文件夹下创建 electron-builder.env 文件。以这种格式书写
https://github.com/motdotla/dotenv-expand/blob/master/test/.env
022020-07-21
相似问题