1. 在你的 Electron 项目中创建一个新的窗口,用于运行 REPL。
const { app, BrowserWindow } = require('electron');
let mainWindow;
function createWindow() {
mainWindow = new BrowserWindow({ width: 800, height: 600 });
mainWindow.loadFile('index.html');
mainWindow.webContents.openDevTools();
// 在主窗口创建后打开 REPL
openRepl();
}
function openRepl() {
const replWindow = new BrowserWindow({
width: 800,
height: 600,
show: false,
webPreferences: {
nodeIntegration: true
}
});
replWindow.loadFile('repl.html');
replWindow.webContents.once('dom-ready', () => {
replWindow.show();
});
}
app.whenReady().then(createWindow);
2. 在项目根目录下创建 repl.html 文件,用于加载 REPL。
<!-- repl.html -->
<!DOCTYPE html>
<html>
<head>
<title>Electron REPL</title>
<style>
body { margin: 0; }
</style>
</head>
<body>
<script>
const repl = require('repl');
// 创建 REPL 实例
const replServer = repl.start({
prompt: 'Electron REPL> ',
input: process.stdin,
output: process.stdout,
terminal: false
});
// 在 REPL 实例中注入一些额外的功能
replServer.context.sayHello = () => {
console.log('Hello from Electron REPL!');
};
</script>
</body>
</html>
在这个示例中,我们创建了一个新的窗口(replWindow),加载了 repl.html 文件,并在其中启动了一个 Node.js REPL 实例。在 REPL 实例中,我们注入了一个简单的函数 sayHello,它在调用时会在控制台打印一条消息。
当你运行 Electron 应用程序时,主窗口会显示应用的内容,而 REPL 窗口会在启动后显示,允许你在其中输入和执行 JavaScript 代码。你可以通过在 REPL 中调用 sayHello() 来测试注入的功能。
这只是一个简单的示例,你可以根据需要扩展和自定义 REPL 窗口,以满足你的实际需求。
转载请注明出处:http://www.zyzy.cn/article/detail/10909/Electron