You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Turns out this is still very manageable although the solution forces us into using inline requires rather than import at the top of our file. It's a minor gripe, but it would be great to have this use case built into the architecture.
To facilitate restarting the Redux environment:
configurestore.js
Use inline requires to work around the previouslyInitialized variable.
main.js
Remove the IPC handler to prevent an Electron error about double registered handlers
// destroy all your windows and then...ipcMain.removeHandler('electron-redux.INIT_STATE_ASYNC');ipcMain.removeAllListeners('electron-redux.INIT_STATE');ipcMain.removeAllListeners('electron-redux.ACTION');
@slapbox I think I saw a notification yesterday at night about a comment, but I don't see that comment here anymore 🤔
In terms of supporting this - I don't see any reason why we could not extend API to support this in the future - but we would need to understand how we plan to solve that and so on. If you are interested and have some ideas in mind, let me know and we could brainstorm it together
Indeed, I commented but I found the issue. But I'm not really sure why removing some code I'd committed fixed it.
Would there be any downside to making previouslyInitialized a global so that users could manually reset it? Or otherwise what would you think of a function like, resetPreviouslyInitialized() to set it back to false?
The solution we have right now involves using inline requires which are a bit more difficult to reason about I feel.
We just upgraded to the
2.0.0-alpha.9
and the new setup looks amazingly simple!I've not gotten things working quite yet, and maybe won't be able to quite yet, but one thing I noticed is
preventDoubleInitialization
https://github.com/klarna/electron-redux/blob/alpha/src/utils/misc.ts#L5
With [email protected] we had built in a custom functionality to restart the redux environment to avoid having to restart our entire project.
The core of our solution was just to use something like below to unregister all channels before we re-create our app's windows from scratch:
Is there a way to achieve this with the new architecture? If not, might I suggest that
previouslyInitialized
(https://github.com/klarna/electron-redux/blob/alpha/src/utils/misc.ts#L5) be made into a global instead so users can manually reset it if needed?The text was updated successfully, but these errors were encountered: