Привет Дин,
Можно ли обновить (перезагрузить приложение) веб-страницу на основе события щелчка на панели вкладок? У меня есть домашняя вкладка на странице панели навигации, и всякий раз, когда я нажимаю на эту вкладку, вся система должна обновляться. В настоящее время я использую кнопку действия, чтобы сделать это. я пытался использоватьshinjs в tabpanel, но это не работает. Не знаю, как с этим справиться.
Вы можете сделать что-то вроде этого
library(shiny)
library(shinyjs)
jscode <- "shinyjs.refresh = function() { location.reload(); }"
shinyApp(
ui = tagList(
useShinyjs(),
extendShinyjs(text = jscode, functions = "refresh"),
navbarPage(
"test",
id = "navbar",
tabPanel(title = "tab1", "tab 1"),
tabPanel(title = "tab2", "tab 2"),
tabPanel(title = "Refresh", value = "refresh")
)
),
server = function(input, output, session) {
observe({
if (input$navbar == "refresh") {
js$refresh();
}
})
}
)
Спасибо, я понял это, но моя страница похожа на страницу поиска Google с домашней вкладкой, когда я открываю ее, она постоянно обновляется. Идея хорошая спасибо.
Вы можете сделать что-то вроде этого
library(shiny) library(shinyjs) jscode <- "shinyjs.refresh = function() { location.reload(); }" shinyApp( ui = tagList( useShinyjs(), extendShinyjs(text = jscode, functions = "refresh"), navbarPage( "test", id = "navbar", tabPanel(title = "tab1", "tab 1"), tabPanel(title = "tab2", "tab 2"), tabPanel(title = "Refresh", value = "refresh") ) ), server = function(input, output, session) { observe({ if (input$navbar == "refresh") { js$refresh(); } }) } )
Здравствуйте, если я хочу обновить только определенную вкладку, а не «местоположение», как я могу получить доступ к TabName, пожалуйста?
Самый полезный комментарий
Вы можете сделать что-то вроде этого