Drab tutorial error

I know where the issue is. The problem is rather fundamental and I must think how to solve it.

Normally, when you run the Drab Handler via JS event (drab-click etc), the default payload is passed to the server, which contains also __drab.index in pages which have Drab.Live enabled.

But you run Drab.exec_elixir(). In this case, only the parameters you give to the method are passed. If you add drab_index to the exec_elixir, all should work:

Drab.exec_elixir('position_changed', {\"lat\":pos.coords.latitude, \"lon\": pos.coords.longitude, \"drab_index\": __drab.index});

I can see 2 possible fixes for this case:

  1. add default payload to Drab.exec_elixir()
  2. create new method Drab.exec_handler() which will have default payload, and leave exec_elixir clean.