Мне было интересно, можно ли создать интерактивное всплывающее диалоговое окно с помощью блестящего (и блестящегоBS).
Например, у меня есть строка, и я хочу ее изменить, и перед этим появляется диалоговое окно с вопросом, действительно ли я хочу ее изменить. В случае, если я говорю «да», он делает это, в противном случае изменение отбрасывается. Вот моя попытка, но я обнаружил две проблемы: 1. если вы нажмете «да» или «нет», ничего не изменится 2. вам всегда нужно закрыть окно внизу «закрыть».
rm(list = ls())
library(shiny)
library(shinyBS)
name <- "myname"
ui =fluidPage(
textOutput("curName"),
br(),
textInput("newName", "Name of variable:", name),
br(),
actionButton("BUTnew", "Change"),
bsModal("modalnew", "Change name", "BUTnew", size = "small",
textOutput("textnew"),
actionButton("BUTyes", "Yes"),
actionButton("BUTno", "No")
)
)
server = function(input, output, session) {
output$curName <- renderText({paste0("Current name: ", name)})
observeEvent(input$BUTnew, {
output$textnew <- renderText({paste0("Do you want to change the name?")})
})
observeEvent(input$BUTyes, {
name <- input$newName
})
}
runApp(list(ui = ui, server = server))
Другие предложения более чем приветствуются!!