我想知道是否可以使用shiny(和shinyBS)创建一个弹出对话框交互式。创建一个弹出式对话框交互式
例如,我有一个字符串,我想改变它,并在做对话框之前显示询问我是否真的想改变它。如果我说“是”,它会这样做,否则它会放弃更改。这是我的尝试,但我发现了两个问题: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))
其他建议不止欢迎!
我真的很感谢你!我想这就是我正在寻找的!现在,我也更好地理解toggleModal的含义(文档对此很少见) – Stefano