私は現在、これまでのところ素晴らしい Electron を使用してアプリケーションを構築しています。
アプリの主な状態、主にユーザー状態 (プロファイルと認証済みなど)を使用Vue.js
して管理しています。Vuex
Vuex
新しいウィンドウを開いて、メインウィンドウと同じ状態にすることができるかどうか疑問に思っています.
現在、ユーザーが認証されていない場合、アプリの起動時にログインウィンドウが表示されますが、これは正常に機能します。
function createLoginWindow() {
loginWindow = new BrowserWindow({ width: 600, height: 300, frame: false, show: false });
loginWindow.loadURL(`file://${__dirname}/app/index.html`);
loginWindow.on('closed', () => { loginWindow = null; });
loginWindow.once('ready-to-show', () => {
loginWindow.show();
})
}
ユーザーはログイン フォームを実行し、成功した場合は次の関数を起動します。
function showMainWindow() {
loginWindow.close(); // Also sets to null in `close` event
mainWindow = new BrowserWindow({width: 1280, height: 1024, show: false});
mainWindow.loadURL(`file://${__dirname}/app/index.html?loadMainView=true`);
mainWindow.once('resize', () => {
mainWindow.show();
})
}
これはすべて機能しますが、唯一の問題は、それが共有されてmainWindow
いたものと同じものを共有しないことですthis.$store
loginWindow
.close()
を新しいウィンドウに渡す方法はありますか?常にそれを非表示にしたり、ビューを変更したりして、Vuex this.$store
すべてを詰め込む必要はありません。状態mainWindow
でVuex
。
説明が必要な場合は、質問してください。ありがとう。