Module
Jelly.Router
- Package
- purescript-jelly-router
- Repository
- yukikurage/purescript-jelly-router
#Router Source
class Router :: (Type -> Type) -> Constraint
class (MonadEffect m) <= Router m where
Router m
represents you can use routing in Monad m
.
Members
usePushRoute :: String -> m Unit
useReplaceRoute :: String -> m Unit
Replace the current Route in the browser history.
useCurrentRoute :: m (Signal String)
Get the current Route.
Instances
#RouterT Source
newtype RouterT :: forall k. (k -> Type) -> k -> Type
newtype RouterT m a
RouterT is a Monad for Router.
Constructors
Instances
(Monad m) => Functor (RouterT m)
(Monad m) => Apply (RouterT m)
(Monad m) => Applicative (RouterT m)
(Monad m) => Bind (RouterT m)
(Monad m) => Monad (RouterT m)
(MonadEffect m) => MonadEffect (RouterT m)
(MonadRec m) => MonadRec (RouterT m)
(MonadHooks m) => MonadHooks (RouterT m)
(MonadEffect m) => Router (RouterT m)
#runRouterT Source
runRouterT :: forall m a. MonadHooks m => RouterT m a -> m a
Run a RouterT.
#runMockRouterT Source
runMockRouterT :: forall m a. MonadHooks m => RouterT m a -> String -> m a
Run a RouterT outside of the browser. This is useful for SSG.
#initRouter Source
initRouter :: forall m. MonadHooks m => m RouterR
#routerLink Source
routerLink :: forall m. MonadEffect m => Router m => String -> Array (Prop m) -> Component m -> Component m
Router link component.
This is the a
element, but when clicked, it does preventDefault and does SPA routing.
#routerLink' Source
routerLink' :: forall m. MonadEffect m => Router m => String -> Component m -> Component m
Same as routerLink
, but without Props.
- Modules
- Jelly.
Router
Push a new Route to the browser history.