覆盖 Electron 中的第一个菜单项

问题描述 投票:0回答:1

Electron 应用程序中的第一个菜单项显然是应用程序名称,但是当我尝试运行我的应用程序时,它总是显示“Electron”,即使在

app.name
中显式设置
main.js
变量之后也是如此。我想知道是否有办法将其更改为自定义名称。我看到的解决方案涉及更改 Info.plist 文件,该文件将成为应用程序模块的一部分。这似乎不是执行此操作的最佳方法。

app.name = 'Custom App Name';

const isMac = process.platform === 'darwin'

const mainMenuTemplate = [
    ...(isMac ? [{
        label: app.name,
        submenu: [
            { role: 'about' },
            { type: 'separator' },
            { role: 'hide' },
            { role: 'hideOthers' },
            { role: 'unhide' },
            { type: 'separator' },
            { role: 'quit' }
        ]
    }] : []),
    {
        label:'File',
        submenu: [
            {
                label: 'More information',
                role: 'info'
            },
         ]
    },
    {
        label:'View',
        submenu: [
            {
               role: 'reload'
            },
        ]
    }
];

// Create the application menu
const menu = Menu.buildFromTemplate(mainMenuTemplate)
Menu.setApplicationMenu(menu)

Application Screenshot

angular ionic-framework electron
1个回答
0
投票

应用程序名称必须使用字段

name
和/或
productName
package.json
进行设置。来自
app.getName()
方法:

根据 npm 模块规范,

通常,

name
package.json
字段是一个简短的小写名称。您通常还应该指定一个
productName
字段,这是您的应用程序的全大写名称,并且 Electron 会优先于
name

此外,如果你想动态更改名称,你必须使用setter

app.setName()
:

app.setName("New name");
© www.soinside.com 2019 - 2024. All rights reserved.