好的,据我所知,这应该执行我的渲染器进程内=IF(C4="Seminar",3,IF(C4="Lecture",5,1))*I4
中指定的代码。当我仅包含一个要执行的executeJavaScript()
时,一切运行正常,并且在开发人员控制台中看到了输出。然后我的问题是,什么原因可能导致此操作无法执行?我尝试在条件之外添加console.log()
,但在开发人员控制台中仍然没有任何显示。更重要的是,我会在哪里插入console.log()
错误,告诉我有一个未知的标识符。
在不发布我的项目其余部分的情况下,我对该功能的理解是否明显有错误或破裂?看来应该很简单。
console.log()
答案 0 :(得分:0)
您应该在DOM准备就绪(即'dom-ready'
)时调用此方法
const {app, BrowserWindow} = require('electron')
const path = require('path')
let mainWindow = null
app.once('ready', () => {
mainWindow = new BrowserWindow({})
const executeOnHTML = () => {
mainWindow.webContents.executeJavaScript(`
document.getElementById('minimize-button').addEventListener('click', function (e) {
const { remote } = require('electron')
var window = remote.BrowserWindow.getFocusedWindow()
window.minimize()
})
`)
}
mainWindow.webContents.once('dom-ready', executeOnHTML)
mainWindow.loadURL(path.join(__dirname, 'index.html'))
})
此外,有很多不同的方法可以执行相同操作,而不是将所有内容都放在一个文件中。
<script src=...>
)引用的js中定义HTML行为我还建议您阅读有关electron's Processes