diff options
-rw-r--r-- | gleam.toml | 2 | ||||
-rw-r--r-- | src/lustre.ffi.mjs | 17 |
2 files changed, 11 insertions, 8 deletions
@@ -1,5 +1,5 @@ name = "lustre" -version = "3.0.0-rc.1" +version = "3.0.0-rc.2" target = "javascript" diff --git a/src/lustre.ffi.mjs b/src/lustre.ffi.mjs index 4713750..b39db16 100644 --- a/src/lustre.ffi.mjs +++ b/src/lustre.ffi.mjs @@ -43,13 +43,16 @@ export const mount = (app, selector) => { // bit of state to track whether we need to run the cmds we have or // not. const [shouldRunCmds, setShouldRunCmds] = React.useState(true); - const [[state, cmds], dispatch] = React.useReducer((state, msg) => { - // Every time we call the user's update function we'll get back a - // new lot of cmds to run, so we need to set this flag to true to - // let our `useEffect` know it can run them! - setShouldRunCmds(true); - return app.update(state, msg); - }, app.init); + const [[state, cmds], dispatch] = React.useReducer( + ([state, _], msg) => { + // Every time we call the user's update function we'll get back a + // new lot of cmds to run, so we need to set this flag to true to + // let our `useEffect` know it can run them! + setShouldRunCmds(true); + return app.update(state, msg); + }, + app.init + ); React.useImperativeHandle(ref, () => dispatch, [dispatch]); React.useEffect(() => { |