如何在浏览器窗口中加载javascript?

时间:2017-04-15 11:01:55

标签: javascript node.js electron

这是在Electron中创建窗口的标准方法(来自文档);

let win;
function createWindow(){
  // Create the browser window.
  win = new BrowserWindow({width: 680, height: 420, frame: false, transparent: true, show: false});

  // and load the index.html of the app.
  win.loadURL(url.format({
    pathname: path.join(__dirname, 'test.html'),
    protocol: 'file:',
    slashes: true
  }));

  win.once('ready-to-show', function() {
    win.show();
  });


  // Open the DevTools.
  // win.webContents.openDevTools()

  // Emitted when the window is closed.
  win.on('closed', function () {
    // Dereference the window object, usually you would store windows
    // in an array if your app supports multi windows, this is the time
    // when you should delete the corresponding element.
    win = null;
  })

}

工作正常,但如何在窗口上下文中加载一堆javascript文件,如jQuery等,而不在test.html中使用<script>标签?

我不想使用脚本标签的原因是因为我可以拥有许多.js文件和.html文件,并且我不希望每次更改时都更新html。我宁愿在创建窗口的函数中使用它们。

1 个答案:

答案 0 :(得分:3)

查看文档时,BrowserWindow有一个webContents property,这是一个WebContents实例,其executeJavascript method接受要执行的JavaScript。

因此,您可以使用net module阅读脚本,然后通过executeJavascript执行。