#electron #menubar
#electron #панель меню
Вопрос:
Я использую панель меню (https://www.npmjs.com/package/menubar ) и мне нужно отправить в него информацию из основного процесса, но, похоже, это не работает.
Как только мое приложение загружается, оно создает панель меню, а также запрашивает некоторую информацию с сервера. Сервер возвращает информацию о том, является пользователь менеджером или нет. Подтверждено, что все работает нормально. Если пользователь является менеджером, я хочу отобразить кнопку в окне меню.
/* основной процесс */
menubar.window.webContents.send('is-a-manager', true)
/* процесс визуализации — я импортирую ipcRenderer*/
ipcRenderer('is-a-manager', (event, isManager) => {
console.log(isManager);
})
Окно внутри строки меню должно фактически регистрировать «true», но оно ничего не печатает.
Комментарии:
1. ПРИМЕЧАНИЕ: в приведенном выше коде есть проблема, которой у меня нет в моем коде… приведенный выше код должен гласить: ipcRenderer.on(….). Я получил код, работающий сейчас, но я не знаю, почему это работает. Это странно, но когда я устанавливаю тайм-аут в 1 секунду, все работает так, как ожидалось. setTimeout(()->{menubar.window.webContents.send(‘is-a-manager’, true)}, 1000). Следовательно, это должно быть проблемой с тем, как вещи загружаются, но я не могу понять, в чем проблема.
2. почему бы вам тогда не отредактировать свой вопрос? 😉
Ответ №1:
ipcRenderer.on('is-a-manager', (event, isManager) => {
console.log(isManager);
})
Комментарии:
1. Да, извините. Это была ошибка в коде, который я предоставил выше. То, как вы это описали, у меня есть в моем коде, и это все еще не работает.