[英]Access Browser Window from menu item in electron-vue
我正在嘗試添加一個菜單項,它將加載設置窗口vue組件的URL。 我按照這個來創建我的菜單 。
問題是我如何點擊這里訪問我的createWindow()方法中的方法,在那里我可以觸發加載browserWindow來設置文件。
我試圖添加一個試圖在createWindow()中訪問函數但沒有運氣的點擊監聽器
mainmenu.js
const {Menu} = require('electron')
const electron = require('electron')
const app = electron.app
const template = [
{
label: 'Custom',
submenu: [
{
label: 'Setting',
click (item, focusedWindow) {
loadSettingWindow()
}
}
]
}
]
const menu = Menu.buildFromTemplate(template)
Menu.setApplicationMenu(menu)
index.js
'use strict'
import { app, BrowserWindow } from 'electron'
let mainWindow
let serviceWindow
const winURL = process.env.NODE_ENV === 'development'
? `http://localhost:9080`
: `file://${__dirname}/index.html`
function createWindow () {
/**
* Initial window options
*/
mainWindow = new BrowserWindow({
height: 563,
useContentSize: true,
width: 1000
})
mainWindow.loadURL(winURL)
mainWindow.on('closed', () => {
mainWindow = null
})
function loadSettingWindow () {
console.log('trigger setting window here')
}
require('./mainmenu')
}
app.on('ready', createWindow)
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit()
}
})
app.on('activate', () => {
if (mainWindow === null) {
createWindow()
}
})
我期望click事件將調用觸發函數loadSettingWindow
但它似乎沒有訪問它。
您無法直接從主進程到渲染器進程。 但是您可以使用IPC向呈現進程發送消息並在Vuejs存在的地方處理它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.