express.ui.page_opts
express.ui.page_opts(
title=MISSING,
window_title=MISSING,
lang=MISSING,
theme=MISSING,
page_fn=MISSING,
fillable=MISSING,
full_width=MISSING,
**kwargs,
)Set page-level options for the current app.
The arguments to this function get passed to page_auto, which determines which page function should be used based on the page options and the top-level items in the app.
If there is a top-level nav_panel, page_auto will use page_navbar. Otherwise, if there is a top-level sidebar, page_sidebar is used.
If there are neither top-level nav panels nor sidebars, this will use the fillable and full_width arguments to determine which page function to use:
- If
fillableisTrue,page_fillableis used. - Otherwise, if
full_widthisTrue,page_fluidis used. - If neither are
True,page_fixedis used.
Parameters
title : str | MISSING_TYPE = MISSING-
A title shown on the page.
window_title : str | MISSING_TYPE = MISSING-
The browser window title. If no value is provided, this will use the value of
title. lang : str | MISSING_TYPE = MISSING-
ISO 639-1 language code for the HTML page, such as
"en"or"ko". This will be used as the lang in the<html>tag, as in<html lang="en">. The default,None, results in an empty string. theme : str | Path |ui.Theme |ThemeProvider| MISSING_TYPE = MISSING-
A custom Shiny theme created using the
Themeclass, or a path to a local or online CSS file that will replace the Bootstrap CSS bundled by default with a Shiny app. This file should be a completebootstrap.cssorbootstrap.min.cssfile. For advanced uses, you can also pass aTagifiableobject. In this case, Shiny will suppress the default Bootstrap CSS. To modify the theme of an app without replacing the Bootstrap CSS entirely, useinclude_cssto add custom CSS. fillable : bool | MISSING_TYPE = MISSING-
If there is a top-level sidebar or nav, then the value is passed through to the
page_sidebarorpage_navbarfunction. Otherwise, ifTrue, usepage_fillable, where the content fills the window; ifFalse(the default), the value offull_widthwill determine which page function is used. full_width : bool | MISSING_TYPE = MISSING-
This has an effect only if there are no sidebars or top-level navs, and
fillableisFalse. If this isFalse(the default), use usepage_fixed; ifTrue, usepage_fillable. page_fn : Callable[…, Tag] | None | MISSING_TYPE = MISSING-
The page function to use. If
None(the default), will automatically choose one based on the arguments provided. If notNone, this will override all heuristics for choosing page functions. ****kwargs** :object= {}-
Additional arguments to pass to the page function. See the description above for further details on how the page function is selected.
Examples
#| standalone: true
#| components: [editor, viewer]
#| layout: vertical
#| viewerHeight: 400
## file: app.py
from shiny.express import ui
ui.page_opts(title="App with Navbar", fillable=True, id="page")
with ui.sidebar():
ui.input_select("data", "Dataset", ("tips", "flights", "exercise"))
with ui.panel_conditional("input.page === 'View'"):
ui.input_select("view", "View", ("plot", "table"))
ui.nav_spacer()
with ui.nav_panel("Data"):
"This page could be used to pick a dataset."
with ui.nav_panel("View"):
"This page could be used to view the dataset."
"Notice the additional controls that appear when 'View' is selected."