如何通过电子菜单导航页面 - angularjs应用程序

时间:2017-09-01 19:11:23

标签: javascript node.js electron

我是电子新手,如何使用电子菜单在本地页面之间导航

{
        label: 'Help',
        submenu: [
            {
                label: 'About',
                click(menuItem, browserWindow, event) {
                    browserWindow.loadURL('/about')
                }
            },
            {
                label: package.name + '-' + package.version,
                enabled: false
            }
        ]
    }

如何在点击菜单

时在本地导航到页面

3 个答案:

答案 0 :(得分:1)

我使用电子远程方法找到的一种方法

main.js(电子文件)

window.setMenu(null);

app.js(控制器)

const { app, remote } = require('electron')
const { Menu, MenuItem } = remote;

var menuCtrl = function ($scope, $state) {

    const template = [
        {
            label: 'Help',
            submenu: [
                {
                    label: 'About',
                    click() {
                        $state.go('about')
                    }
                }
            ]
        }
    ];

    // Menu
    const menu = Menu.buildFromTemplate(template);
    Menu.setApplicationMenu(menu);

};

menuCtrl.$inject = ['$scope', '$state'];

module.exports = menuCtrl;

答案 1 :(得分:1)

使用AngularJS时,您也可以将其写为

label: 'Help',
    submenu: [
        {
            label: 'About',
            click(menuItem, browserWindow, event) {
                browserWindow.loadURL(`file://${__dirname}/app/index.html#/about`)
            }
        },
        ...
    ]

答案 2 :(得分:0)

你所得到的是好的,除非你把完整的网址放在.loadURL函数中,如https://stackoverflow.com/tour/