1

我有一个带有输入滑块和输出表的闪亮应用程序。我想在输出表上放置一个工具提示,其中包含来自输​​入滑块的输入的文本,即工具提示文本随着滑块的变化而动态更新。我无法让它工作。

library(shiny)
library(shinyBS)


ui <- fluidPage(
  sliderInput(inputId="inputValue",label="Input Value", 0,100, value=90, step=1),

  tableOutput(outputId="outputTableId")
)


server <- function(input, output, session) {
  renderTables <- observe({
    browser()
    output$outputTableId<-renderTable({
      data.frame("Output" = c(1,2,3) * input$inputValue)  
    })
    addTooltip(session, id="outputTableId", title=paste0("Tooltip text with dynamic ",input$inputValue,"% prediction interval"), placement="right")

  })


}

shinyApp(ui = ui, server = server)

在我的主应用程序中(太大而无法在此处发布),工具提示正在工作和更新,但只有每隔一次更新 - 在滑块的每一次其他更改中,工具提示都不会显示,但其他时候它会工作,具有正确的动态值。这可能与这个问题有关,这可能是一个错误。

然而,当试图为这个问题创建一个可重现的例子时,我什至无法让它工作。

4

1 回答 1

1

嗯,不明显。这是我找到的方法:

library(shiny)
library(shinyBS)

ui <- fluidPage(
  sliderInput(inputId="inputValue", label="Input Value", 0,100, value=90, step=1),
  div(
    id = "container",
    style = "display:inline-block",
    uiOutput("table")
  )
)


server <- function(input, output, session) {
  output$outputTableId <- renderTable({
    data.frame("Output" = c(1,2,3) * input$inputValue)  
  })

  output$table <- renderUI({
    tipify(
      tableOutput(outputId = "outputTableId"),
      title=paste0("Tooltip text with dynamic ", input$inputValue, "% prediction interval"),
      placement = "right",
      options = list(container = "#container"))
  })

}

shinyApp(ui = ui, server = server)
于 2018-12-19T15:18:15.057 回答