検索

ホームページ  >  に質問  >  本文

node.js - Electron メイン スレッドとレンダリング スレッド間の通信の問題 (Menubar イベントがレンダリング スレッドからデータを取得する方法)

###こんにちは、みんな:###

私は

electron

を使用してエディターに似たアプリケーションを作成しています。アプリケーションのメニュー バーにファイル保存機能があります:

メニュー バーはメイン スレッドにありますが、保存操作ではレンダリング スレッドのエディターでコンテンツを取得する必要があるためです。公式 Web サイトには、メイン スレッドを要求するレンダリング スレッドの例 (

ipcMain とipcRenderer

) を実行しますが、 ipcMain ipcRenderer. を積極的にリクエストすることはできないようです。 そこで皆さんにお聞きしたいのですが、メインスレッドはどのようにしてレンダリング スレッドに積極的にリクエストして、レンダリング スレッドのメソッドを呼び出したり、レンダリング スレッドのイベントをトリガーしたりするのでしょうか?

###ありがとう!###
大家讲道理大家讲道理2703日前1250

全員に返信(2)返信します

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-07-03 11:44:13

    解決策が見つかりました^_^

    イベント内で対応するデータを持ち運ぶipcMainipcRenderer中同时监听两个相同名字的事件,然后在主线程中使用focusedWindow.webContents.send('save-file')触发ipcRenderersave-file事件,在ipcRenderersave-file事件中请求ipcMainsave-file

    ipcメイン:

    リーリー

    ipcレンダラー:

    リーリー

    返事
    0
  • 巴扎黑

    巴扎黑2017-07-03 11:44:13

    最初にイベントをレンダリング スレッドにバインドできます。たとえば、ipcRenderer.on('save', save);,然后在用户点击菜单中的 Save 时触发这个事件,然后在 save 関数でイベントをブロードキャストし、必要なデータを渡します。

    少し複雑ですが、今のところ思いつくのはこれだけです。

    返事
    0
  • キャンセル返事