on develop help sign in
Use requestDomAction in ImmediateDomBuilderT runWithReplace
ec0ca04Ali Abrar
reflex-dom-core/src/Reflex/Dom/Builder/Immediate.hs+6−4
@@ -523,10 +523,12 @@ instance (Reflex t, MonadAdjust t m, MonadJSM m, MonadHold t m, PerformEvent t m
523 result <- runReaderT (unImmediateDomBuilderT child) $ initialEnv
523 result <- runReaderT (unImmediateDomBuilderT child) $ initialEnv
524 { _immediateDomBuilderEnv_parent = toNode df
524 { _immediateDomBuilderEnv_parent = toNode df
525 }
525 }
526+ let update = do
526− deleteBetweenExclusive before after
527+ deleteBetweenExclusive before after
527− insertBefore df after
528+ insertBefore df after
528− return result
529+ return (result, update)
530+ requestDomAction_ $ snd <$> result'
529− return (result0, result')
531+ return (result0, fst <$> result')
530 traverseDMapWithKeyWithAdjust (f :: forall a. k a -> v a -> ImmediateDomBuilderT t m (v' a)) (dm0 :: DMap k v) dm' = do
532 traverseDMapWithKeyWithAdjust (f :: forall a. k a -> v a -> ImmediateDomBuilderT t m (v' a)) (dm0 :: DMap k v) dm' = do
531 initialEnv <- ImmediateDomBuilderT ask
533 initialEnv <- ImmediateDomBuilderT ask
532 (children0, children') <- ImmediateDomBuilderT $ lift $ traverseDMapWithKeyWithAdjust (\k v -> drawChildUpdate initialEnv $ f k v) dm0 dm'
534 (children0, children') <- ImmediateDomBuilderT $ lift $ traverseDMapWithKeyWithAdjust (\k v -> drawChildUpdate initialEnv $ f k v) dm0 dm'