Hallo Dekan,
Ist es möglich, die Webseite basierend auf dem Klickereignis im Tabset-Bereich zu aktualisieren (Anwendung neu zu laden)? Ich habe einen Home-Tab auf meiner Navbar-Seite, immer wenn ich auf diesen Tab klicke, muss das gesamte System aktualisiert werden. Derzeit verwende ich eine Aktionsschaltfläche, um dies zu tun. Ich habe versucht, Shinyjs in Tabpanel zu verwenden, aber es funktioniert nicht. Ich bin mir nicht sicher, wie ich damit umgehen soll.
Sie können so etwas tun
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();
}
})
}
)
Danke, ich habe es verstanden, aber meine Seite ist wie eine Google-Suchseite mit einem Home-Tab, wenn ich sie öffne, wird sie immer wieder aktualisiert. Die Idee war gut, danke.
Sie können so etwas tun
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(); } }) } )
Hallo, wenn ich nur einen bestimmten Tab aktualisieren möchte, nicht den "Standort", wie kann ich bitte auf den TabName zugreifen?
Hilfreichster Kommentar
Sie können so etwas tun