这可能与我插入导航选项卡的方式有关?如果有人可以提供帮助,我将非常感激。
我正在使用与此 reprex 类似的东西,因为 nav_inserts 仅在用户登录时才会激活。我知道我可能应该使用 nav_panel_hidden 。
我使用 bslib 更改为 navbarPage 有点太远了,当然它有自己的 updateNavbarPage() 函数。
当我在页面中使用 navset_card_tab 时,使用 nav_select 没有问题,但我似乎无法更改页面。
谢谢!
shinyApp(
ui = page_fillable(
page_navbar(title='Reprex',
padding=c(0,0,0,0),
bg='#e6e6e6',
id='tabs'
)
),
server = function(input, output, session) {
nav_insert(id='tabs',select=FALSE,position='before',
as_fill_carrier(nav_panel(title='Page 2',id='page2')))
nav_insert(id='tabs',select=TRUE,position='before',
as_fill_carrier(nav_panel(title='Page 1',id='page1',
actionButton(inputId='changePage',label='Change Page'))))
observeEvent(input$changePage,{
nav_select(
id='tabs',
selected = "page2"
)
})
})
实际上,看过更典型的做法后,这似乎也不起作用
shinyApp(
ui = page_fillable(
page_navbar(title='Reprex',
padding=c(0,0,0,0),
bg='#e6e6e6',
id='tabs',
nav_panel(title='Page 2',id='page2'),
nav_panel(title='Page 1',id='page1',
actionButton(inputId='changePage',label='Change Page'))
)
),
server = function(input, output, session) {
observeEvent(input$changePage,{
nav_select(
id='tabs',
selected = "page2"
)
})
})
我期待第 1 页滑动到第 2 页。在我的应用程序中,这是在按下以编辑特定字段的按钮内,其中编辑器是它自己的详细页面,该页面已成功更新为要编辑的 id,但是我无法将其链接到更改页面。
使用
title
,而不是 id
:
nav_select(
id='tabs',
selected = "Page 2"
)