如何实现Electron - mainWindow.webContents.executeJavaScript()带有文件而不是文本?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (1600)

我正在构建一个我不能使用的应用程序,webview因为它不能做我想做的一切,而使用mainWindow它。

但是,我需要使用整个javascript文件而不仅仅是文本

例:

const {app, BrowserWindow} = require('electron');

let mainWindow;

app.on('ready', function() {
    mainWindow = new BrowserWindow({
        width: 1024,
        height: 1024
    });
    mainWindow.loadURL("https://www.google.com/");
    mainWindow.webContents.executeJavaScript('alert("this is a test!");');

    // I want to load an entire file for the .executeJavaScript()
    // I have a file within the same directory called 'index.js'
    // How would I implement this?
    mainWindow.webContents.executeJavaScript('???');
});
提问于
用户回答回答于

请问怎么才能获取到执行的JS的返回值呢

用户回答回答于

将文件读取到字符串并执行它如何?

const fs = require("fs");

const js = fs.readFileSync('./somefile.js').toString();

mainWindow.webContents.executeJavaScript(js);

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励