0

我正在寻找一种方法来根据电子加载的页面中提供的信息更新 MAC 应用程序的徽章值。

我正在使用文件中的以下代码在启动时加载页面main.js

function createWindow () {
// Create the browser window.
mainWindow = new BrowserWindow({width: 1280, height: 800, show:false})
// and load the index.html of the app.
mainWindow.loadURL('https://myapp/Home.html');

加载的页面“ https://myapp/Home.html ”有一个隐藏的输入变量,其中包含需要在电子徽章上更新的通知数量

如何从 main.js 文件调用变量并使用更新徽章?

app.on('ready', app.setBadgeCount(Html_Hidden_Variable))

请让我知道这是正确的方法,因为我希望避免创建和额外调用应用程序的数据库。

提前感谢您的帮助。

4

2 回答 2

1

这是我设法做到的。

获取通知数量的变量并将其发送到电子应用程序

主页.html

<script>
//setup the electron object to be able to send variable to it 
const ipcRenderer = require('electron').ipcRenderer;

//send the value Html_Hidden_Variable to electron variable CountNotifElectron 
ipcRenderer.send('CountNotifElectron', Html_Hidden_Variable);
</script>

检索变量发送并更新徽章。

主.js

const {ipcMain} = require('electron')

//retreive the variable 'CountNotifElectron' with the number of notification
ipcMain.on('CountNotifElectron', function(event, arg) 
{
  //update the value of the badge 
  app.setBadgeCount(arg);
})
})
于 2016-12-18T16:33:14.097 回答
1

您必须使用 IPC 并将通知编号传递给 main.js,然后将其保存在一个变量中并在您的代码中使用它

于 2016-12-15T19:57:00.667 回答