javascript - 如何将值作为参数从 Node js文件发送到 Electron main.js文件的loadURL()?

标签 javascript node.js electron

const electron = require("electron");
const { app, BrowserWindow } = electron;
const path = require("path");
​
function createWindow() {
  // Create the browser window.
​
  //window 1
  let win1 = new BrowserWindow({
    width: 1000,
    height: 600,
  });
​
  win1.loadURL("https://twitter.com/");
  win1.on("closed", () => {
    win1 = null;
  });
}
app.on("ready", createWindow);

我需要从前端获取url并在node.js中访问并作为参数传递给main.js loadURL()。

最佳答案

从前端获取 url 并在 Node.js 中访问是什么意思? 如果我的识别正确,我认为您将从渲染器读取 url 并将其发送到 Electron 主进程以根据该 url 创建 BrowserWindow。 所以渲染器和main之间的通信。 使用此ipcRendereripcMain。 您可以像这样使用 ipcRenderer 发送 url

...
    const { ipcRenderer } = require('electron');

    function sendUrlToMain(url) {
      ipcRenderer.sendSync('sendUrlToMain', url);
      return res;
    }
...

然后将其添加到 main.js

ipcMain.on('sendUrlToMain',(event, arg) => {
let win1 = new BrowserWindow({
    width: 1000,
    height: 600,
  });
​
  win1.loadURL(arg);
  win1.on("closed", () => {
    win1 = null;
  });
});

关于javascript - 如何将值作为参数从 Node js文件发送到 Electron main.js文件的loadURL()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59412644/

相关文章:

java - 使 Javascript 函数可用于 Java 代码

javascript - 如何在Electron中触发node filename.js文件?

javascript - 顺序运行 Q Promise

php - 用 Electron VCRUNTIME140.dll 错误捆绑 PHP7

Javascript:正则表达式字符串中的转义字符问题?

javascript - Grunt 将外部 JS 编译成内联 HTML

javascript - XMLHttpRequest 在打开时未定义

javascript - eval() 处理对象时出现语法错误

javascript - 在 jquery 事件处理程序中使用sequelize 查询结果

node.js - Electron url 方案 "open-url"事件