Есть ли способ стереть содержимое окна bsModal () при нажатии кнопки «Закрыть»? - PullRequest
0 голосов
/ 09 января 2019

Я использую окно bsModal () из пакета ShinyBS в одном из моих приложений Shiny. Всякий раз, когда пользователь открывает модальное окно во второй раз, содержимое окна с первого открытия остается на экране, пока не загрузится новый контент. Что не идеально. Есть ли способ удалить содержимое окна bsModal () после его закрытия? Я не хочу, чтобы старый контент появлялся в окне после его открытия. Впоследствии, может быть, есть способ очистить окно bsModal () перед открытием?

Я не смог найти никакого решения для этого

Вот пример (не мой) код приложения, к которому также можно получить доступ через: библиотека (shinyBS) bsExample ( "модальностей")

ui.R

library(shiny)
library(shinyBS)
 fluidPage(
   sidebarLayout(
     sidebarPanel(
       sliderInput("bins",
                   "Number of bins:",
                   min = 1,
                   max = 50,
                   value = 30),
       actionButton("tabBut", "View Table")
     ),

     mainPanel(
       plotOutput("distPlot"),
       bsModal("modalExample", "Data Table", "tabBut", size = "large",
         dataTableOutput("distTable"))
     )
   )
)

server.R

library(shiny)
library(shinyBS)
shinyServer(
 function(input, output, session) {

   output$distPlot <- renderPlot({

     x    <- faithful[, 2]
     bins <- seq(min(x), max(x), length.out = input$bins + 1)

     # draw the histogram with the specified number of bins
     hist(x, breaks = bins, col = 'darkgray', border = 'white')

   })

   output$distTable <- renderDataTable({

     x    <- faithful[, 2]
     bins <- seq(min(x), max(x), length.out = input$bins + 1)

     # draw the histogram with the specified number of bins
     tab <- hist(x, breaks = bins, plot = FALSE)
     tab$breaks <- sapply(seq(length(tab$breaks) - 1), function(i) {
       paste0(signif(tab$breaks[i], 3), "-", signif(tab$breaks[i+1], 3))
     })
     tab <- as.data.frame(do.call(cbind, tab))
     colnames(tab) <- c("Bins", "Counts", "Density")
     return(tab[, 1:3])

   }, options = list(pageLength=10))

 }
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...