我尝试在链接here后面实现页面刷新按钮。但是当我尝试部署到shinyapp.io
时,它失败并要求安装我已经完成的包V8
。该应用程序在机器上正常工作。我使用的代码是:
jsResetCode <- "shinyjs.reset = function() {history.go(0)}",
useShinyjs(), # Include shinyjs in the UI
extendShinyjs(text = jsResetCode), # Add the js code to the page
p(actionButton("reset_button", "Reset Tool"))
在server.R
:
observeEvent(input$reset_button, {js$reset()})
如果没有shinyjs
,有没有办法做到这一点?
答案 0 :(得分:15)
为了完成,下面的代码是一个使用&#34;刷新&#34;的工作Shiny应用程序的最小示例。按钮
library(shiny)
library(shinyjs)
jscode <- "shinyjs.refresh = function() { history.go(0); }"
ui <- fluidPage(
useShinyjs(),
extendShinyjs(text = jscode),
textInput("text", "Text"),
actionButton("refresh", "Refresh app")
)
server <- function(input, output, session) {
observeEvent(input$refresh, {
js$refresh();
})
}
shinyApp(ui = ui, server = server)
修改:由于闪亮版本为0.13.0,因此可以使用Shiny的session$reload()
功能