The init function is only invoked when the page is loaded and the program
starts up.
If you have a form with a submit button, that may be refreshing the page,
which will restart the program.
What does the code for your form & button look like?
On Monday, April 10, 2017 at 8:48:39 AM UTC-7, Oliver Dunkl wrote:
>
> When will the init function call?
>
> I have a strange (for me) behaviour in my flow. I have a backend call
> in which some entity will be saved. I have a page redirect logic e.g.:
>
> type alias Model
> { page : Int
> }
>
> view model =
> case model.page of
> 0 -> viewA
> 1 -> viewB
> ...
>
> In my 'update' function I will set this pages:
>
> init : (Model, Cmd Action)
> init =
> let model = Model 0
> in (model, Cmd.batch [])
>
> update action model =
> case action of
> ActionA -> model ! [ saveEntity ]
> SaveE (Err _) -> model ! []
> SaveE (Ok _) -> { model | page = 1 } ! []
>
> I have a button which triggers ActionA and this sends a backend-call. So
> sometimes it works as expected and sometimes the whole page will be
> reloaded after SaveE (Ok _) and the init function will be called and my
> model is
> initialized with the starting values.
>
> The backend gets some values and saves the entity in the db. This
> works fine with a curl-call.
>
> So my question is, is there a trigger which reloads the page and calls
> the init function? And has someone an idea why the init function will
> called in the
> middle of a flow?
>
> My problem is it seems that this happens randomly and I have currently
> no idea where the problem comes from.
>
> thx
> \= odi
>
--
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.