我在这一块上撞墙。我试图覆盖演示电子应用的名称,以给它一个自定义名称,而不仅仅是Electron
。我创建了一个模块,这样做:无法在Mac OS电子菜单上覆盖应用程序名称
const {app, Menu} = require('electron')
const template = [
{
label: 'New Name',
submenu:[
{
label: 'Test',
click: (menuItem, browserWindow, event) => {
console.log('menu item clicked')
}
},
{role: 'quit'}
]
},
{
label: 'test test',
submenu:[
{
label: 'Test',
click: (menuItem, browserWindow, event) => {
console.log('menu item clicked')
}
},
{role: 'quit'}
]
}
]
installApplicationMenu = function(){
const menu = Menu.buildFromTemplate(template)
let result = Menu.setApplicationMenu(menu)
}
module.exports = {
installApplicationMenu
}
而且我创造了我的窗前后调用此模块:
const {app, BrowserWindow} = require('electron')
const path = require('path')
const url = require('url')
const {installApplicationMenu} = require('./MenuInstaller')
require('electron-reload')(__dirname,{
electron: path.join(__dirname, 'node_modules', '.bin', 'electron')
})
let win
function createWindow(){
win = new BrowserWindow({
width: 800,
height: 600
})
win.loadURL(
url.format({
pathname: path.join(__dirname, 'index.html'),
protocol: 'file:',
slashes: true
})
)
win.on('closed',() => {
win = null
})
}
app.on('ready', function(){
createWindow()
installApplicationMenu()
})
app.on('activate',() => {
if(win === null) createWindow()
})
当我做第二个菜单组得到它的的test test
但自定义名称主菜单名称仍然Electron
:
我的代码被比作不同的应用程序I C在我能够覆盖默认名称的地方重新考虑,并且我无法发现在这种情况下保留覆盖的功能。
任何想法?