Thanks for the explanation! Now that I understand what is happening I think I'll go with the fix described here https://groups.google.com/forum/#!topic/elm-discuss/F_oLy4PUF2o.
Thanks, Kevin (Also, sorry for double posting!) On Saturday, October 15, 2016 at 7:59:15 PM UTC-4, OvermindDL1 wrote: > > You will not be able to do that as Elm has its own scheduler that uses > `setTimeout(0, ...)` to do the event loops, including the very first init, > and that errors causes that event loop to die. I'd probably recommend > changing your flags to handle this case differently or you might be able to > do it by setting up a port and messaging into it and maybe seeing if the > port exists (if it does not exist it all then the app may not have loaded, > I've not tested this to see 'when' the ports are setup in the setup but you > could always have the program message back 'out' if it was successful, > though I'd go with changing how the data is passed in). > > On Saturday, October 15, 2016 at 11:20:11 AM UTC-6, Kevin Berridge wrote: >> >> I'm using App.programWithFlags to initialize the state of my model from >> local storage (as described in this blog article >> <https://medium.com/wunder-nerds/storing-and-restoring-the-state-in-elm-0-17-94874429dc1d>). >> >> But when the schema of my model changes (ex: I added a new field to a >> record type) it will correctly error out when Elm.Main.fullscreen is called >> with error: "You are trying to initialize module `Main` with an unexpected >> argument." >> >> I am OK with throwing away the state from local storage and starting from >> scratch when this happens, so I tried to add a try catch in the JavaScript >> but surprisingly (to me) the catch doesn't fire. >> >> try { >> elmApp = Elm.Main.fullscreen(startingState); >> } >> catch (e) { >> elmApp = Elm.Main.fullscreen(null); // this never gets called >> } >> >> Is there a way that I can catch this error? Or do I need to use a >> different approach? >> >> Thanks, >> Kevin >> > -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
