Closed3

electron奮闘

yuiyui

不要なリスナーは解除しないとビルド後に固まる原因になる

          mainWindow.webContents.send('updateLocalApplication', result)
          // 送った後はリスナーは必要ないので削除する
          mainWindow.webContents.removeAllListeners('updateLocalApplication')

ipcMainの場合はこう

  mainWindow.on('close', (event) => {
    if (quitting) {
      mainWindow = null
      // アプリを閉じる際に全リスナーを解除する
      ipcMain.removeAllListeners()
    } else {
      event.preventDefault()
      mainWindow.hide()
    }
  })
yuiyui

keytarなど署名なしモジュールを使う場合はビルド時にasarUnpackを指定する

asarUnpack: ['node_modules/node-mac-permissions', 'node_modules/keytar']
yuiyui

electronではwindow.Notification.permissionが常にgrantedになってしまう

https://github.com/electron/electron/issues/11221

issue化もされていて、要はwindow.Notification.permissionの判定はelectronではあてにならないので、おそらくnode.jsで通知設定を取得してブラウザに送る必要があるかな...

このスクラップは2022/09/21にクローズされました