I
Size: a a a
I
I
“вешать Msg прям на onClick и тд”
?AP
Event ()
в Event Bool
и в месте потребления сигнала игнорировать Falses. Та же ситуация с Subscriptions - состояния они иметь не могут, а если мы оное организуем через свёртку, то в каком-то виде каждое событие всё равно будет проталкиваться. В обоих случаях будет вызываться update (или его эквивалент в случае сигналов), и даже если модель не поменяется, view всё равно будет вызываться, строить новую - идентичную старой - версию DOM, потом будет производиться сравнение DOMов и вот это всё. Т.к. elm - энергичный, полностью избежать накладных расходов на обработку сообщений нельзя, поэтому от ненужных в данный момент подписок приходится избавляться.I
AP
AP
Cmd Msg
может сфейлиться, а просто Msg
всегда удаётсяAP
Cmd Msg
, это отложенный эффект, тогда как Msg
, это "чистое" сообщение, оно сразу попадает в update
I
update
не пишу логики для всяких onClick,Cmd
в обработке Msg
и просто возвращаю model.MorePlease ->
(model, getRandomGif model.topic)
AP
I
AP
AP
AP
AP
к
AP
к
type Msg = Cmd (Cmd Msg) | ...
[ onClick (Cmd (getRandomGif model.topic)) ]
Cmd cmd ->
(model, cmd)
AP
AP
type Msg = Cmd (Cmd Msg) | ...
[ onClick (Cmd (getRandomGif model.topic)) ]
Cmd cmd ->
(model, cmd)