访问R Shiny应用程序中的Javascript变量

时间:2018-06-08 10:04:09

标签: r shiny shinyjs

我想知道是否可以在我的R代码中使用runjs()中创建的变量。 例如,我将能够访问today_var函数之外的变量runjs()以进行进一步分析。

if (interactive()) {
  library(shiny)
  shinyApp(
    ui = fluidPage(
      useShinyjs(),  
      actionButton("btn", "Click me")
    ),
    server = function(input, output) {
      observeEvent(input$btn, {

        runjs("var today_var = new Date(); alert(today);")
        #print(today_var)

      })
    }
  )
}

提前致谢

1 个答案:

答案 0 :(得分:3)

Theres奇妙的功能称为Shiny.onInputChange它会做你想做的事情

library(shiny)
library(shinyjs)
shinyApp(
  ui = fluidPage(
    useShinyjs(),  
    actionButton("btn", "Click me")
  ),
  server = function(input, output) {
    observeEvent(input$btn, {

      runjs('var today_var = new Date(); alert(today_var);Shiny.onInputChange("today_var",today_var);')
      print(input$today_var)

    })
  }
)