`electron-is-dev` 的问题

来源:4-3 配置开发环境(一)

Makara

2024-02-06

  • package.json
  "devDependencies": {
    "electron": "^28.2.1",
    "electron-is-dev": "^3.0.1"
  }
  • main.js
const { app, BrowserWindow } = require('electron');
const isDev = require('electron-is-dev');

let mainWindow;

app.on('ready', () => {
    mainWindow = new BrowserWindow({
        width: 1024,
        height: 680,
        webPreferences: {
            nodeIntegration: true,
        }
    })
    const urlLocation = isDev ? 'http://localhost:3000' : 'dummyurl'
    mainWindow.loadURL(urlLocation);
})

npm run dev 报错内容:

App threw an error during load
ReferenceError: require is not defined in ES module scope, you can use import instead
This file is being treated as an ES module because it has a '.js' file extension and '.../package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs' file extension.
写回答

1回答

张轩

2024-02-07

同学你好

electron-is-dev 刚发新版,已经全部使用 es modules 的写法了,用 import 写法就可以了

请看文档:https://github.com/sindresorhus/electron-is-dev

import isDev from 'electron-is-dev';
if (isDev) {
	console.log('Running in development');
} else {
	console.log('Running in production');
}


0
3
慕九州9087631
回复
慕侠7578385
回复 慕侠7578385:怎么这么复杂,有没有简单点的方法?isDev是怎么判断的?能不能自己写个程序判断?
2024-10-16
共3条回复

2024更新 Electron+React+七牛云实战跨平台桌面应用

开发一款自动云同步的 Markdown 文件管理软件

1251 学习 · 463 问题

查看课程