Type: | Package |
Title: | 'React Router' for 'shiny' Apps and 'Quarto' |
Version: | 0.1.1 |
Maintainer: | Felix Luginbuhl <felix.luginbuhl@protonmail.ch> |
Description: | You can easily share url pages using 'React Router' in 'shiny' applications and 'Quarto' documents. The package wraps the 'react-router-dom' 'React' library and provides access to hash routing to navigate on multiple url pages. |
License: | MIT + file LICENSE |
Encoding: | UTF-8 |
Depends: | R (≥ 3.4) |
Imports: | htmltools, shiny, shiny.react, checkmate, uuid |
Suggests: | testthat (≥ 3.0.0), chromote (≥ 0.1.1.9001), shinytest2, knitr, rmarkdown |
RoxygenNote: | 7.3.2 |
URL: | https://felixluginbuhl.com/reactRouter/ |
BugReports: | https://github.com/lgnbhl/reactRouter/issues |
Config/testthat/edition: | 3 |
VignetteBuilder: | knitr |
NeedsCompilation: | no |
Packaged: | 2025-07-23 14:05:29 UTC; felix |
Author: | Felix Luginbuhl |
Repository: | CRAN |
Date/Publication: | 2025-07-23 14:30:02 UTC |
BrowserRouter
Description
https://reactrouter.com/6.30.0/router-components/browser-router
Usage
BrowserRouter(...)
Arguments
... |
Props to pass to element. |
Value
A BrowserRouter component.
HashRouter
Description
https://reactrouter.com/6.30.0/router-components/hash-router
Usage
HashRouter(...)
Arguments
... |
Props to pass to element. |
Value
A HashRouter component.
Link
Description
The 'reloadDocument' can be used to skip client side routing and let the browser handle the transition normally (as if it were an <a href>). Given shiny behavior, using 'reloadDocument = TRUE' allows to render correctly objects created in the server side.
https://reactrouter.com/6.30.0/components/link
Usage
Link(..., reloadDocument = TRUE)
Link.shinyInput(inputId, ..., reloadDocument = TRUE)
updateLink.shinyInput(
session = shiny::getDefaultReactiveDomain(),
inputId,
...
)
Arguments
... |
Props to pass to element. |
reloadDocument |
Boolean. Default TRUE. Let browser handle the transition normally |
inputId |
ID of the component. |
session |
Object passed as the 'session' argument to Shiny server. |
Value
A Link component.
MemoryRouter
Description
https://reactrouter.com/6.30.0/router-components/memory-router
Usage
MemoryRouter(...)
Arguments
... |
Props to pass to element. |
Value
A MemoryRouter component.
NavLink
Description
The 'reloadDocument' can be used to skip client side routing and let the browser handle the transition normally (as if it were an <a href>). Given shiny behavior, using 'reloadDocument = TRUE' allows to render correctly objects created in the server side.
https://reactrouter.com/6.30.0/components/nav-link
Usage
NavLink(..., reloadDocument = TRUE)
NavLink.shinyInput(inputId, ..., reloadDocument = TRUE)
updateNavLink.shinyInput(
session = shiny::getDefaultReactiveDomain(),
inputId,
...
)
Arguments
... |
Props to pass to element. |
reloadDocument |
Boolean. Default TRUE. Let browser handle the transition normally |
inputId |
ID of the component. |
session |
Object passed as the 'session' argument to Shiny server. |
Value
A NavLink component.
Navigate
Description
https://reactrouter.com/6.30.0/components/navigate
Usage
Navigate(...)
Arguments
... |
Props to pass to element. |
Value
A Navigate component.
Outlet
Description
https://reactrouter.com/6.30.0/components/outlet
Usage
Outlet(...)
Arguments
... |
Props to pass to element. |
Value
A Outlet component.
Route
Description
https://reactrouter.com/6.30.0/components/route
Usage
Route(..., element, key = uuid::UUIDgenerate())
Arguments
... |
Props to pass to element. |
element |
element wrapped in a 'shiny::div()'. |
key |
By default uses a UUID key in the 'div()' of the 'element' arg. |
Details
Internally the 'element' is wrapped in a 'shiny::div()' with a UUID key so, in case R shiny is used, shiny can differentiate each element.
Value
A Route component.
Routes
Description
https://reactrouter.com/6.30.0/components/routes
Usage
Routes(...)
Arguments
... |
Props to pass to element. |
Value
A Routes component.
Documentation template for components
Description
Documentation template for components
Arguments
... |
Props to pass to the component. The allowed props are listed below in the Details section. |
Value
Object with 'shiny.tag' class suitable for use in the UI of a Shiny app.
react-router-dom JS dependency
Description
react-router-dom JS dependency
Usage
reactRouterDependency()
Value
HTML dependency object.
Run reactRouterExample example
Description
Launch a Shiny example app or list the available examples. Use 'reactRouter::reactRouterExample("basic")' to run a showcase app.
Usage
reactRouterExample(example = NULL, ...)
Arguments
example |
The name of the example to run, or 'NULL' to retrieve the list of examples. |
... |
Additional arguments to pass to 'shiny::runApp()'. |
Value
This function normally does not return; interrupt R to stop the application (usually by pressing Ctrl+C or Esc).
See Also
[shiny.blueprint::runExample()] which this function is an adaptation.
Objects exported from other packages
Description
These objects are imported from other packages. Follow the links below to see their documentation.
- shiny.react