R 输入应用程序输入后执行脚本

R 输入应用程序输入后执行脚本,r,shiny,R,Shiny,我对Shiny比较陌生,正在尝试创建一个应用程序,创建一个全局变量,然后我可以将其传递给R脚本。以下是我的闪亮应用程序的一个示例: library(shiny) ui <- fluidPage( titlePanel("Hello"), br(), h3("Welcome"), sidebarLayout( sidebarPanel( h1("Enter parameter value

我对Shiny比较陌生,正在尝试创建一个应用程序,创建一个全局变量,然后我可以将其传递给R脚本。以下是我的闪亮应用程序的一个示例:

library(shiny)
 
ui <- fluidPage(
  titlePanel("Hello"),
  br(),
  h3("Welcome"),
  
  sidebarLayout(
    
    sidebarPanel(
      h1("Enter parameter value"),
      selectInput("datamodel", "Update Data Model",
                  choices = c("Yes", "No"),
                  selected = "No")
    ),
    
    mainPanel(
      h1("Output")
      
    )
  ))

# Define server logic
server <- function(input, output) {
  
  observe({
    Update_Data_Model <<- input$datamodel
  })  
  
  source("Authentication.R")
  
}


# Run the application shinyApp(ui = ui, server = server) 
库(闪亮)

ui您可以在输入本身上使用observeEvent,因此它将仅在输入更改时执行:

library(shiny)

ui <- fluidPage(
  titlePanel("Hello"),
  br(),
  h3("Welcome"),

  sidebarLayout(

    sidebarPanel(
      h1("Enter parameter value"),
      selectInput("datamodel", "Update Data Model",
                  choices = c("Yes", "No"),
                  selected = "No")
    ),

    mainPanel(
      h1("Output")

    )
  ))

# Define server logic
server <- function(input, output) {

    observeEvent(input$datamodel, {

        Update_Data_Model <<- input$datamodel

        if(input$datamodel == 'Yes') {

            source("Authentication.R")

        }

    })

}

shinyApp(ui = ui, server = server)
库(闪亮)

ui您可以在输入本身上使用observeEvent,因此它将仅在输入更改时执行:

library(shiny)

ui <- fluidPage(
  titlePanel("Hello"),
  br(),
  h3("Welcome"),

  sidebarLayout(

    sidebarPanel(
      h1("Enter parameter value"),
      selectInput("datamodel", "Update Data Model",
                  choices = c("Yes", "No"),
                  selected = "No")
    ),

    mainPanel(
      h1("Output")

    )
  ))

# Define server logic
server <- function(input, output) {

    observeEvent(input$datamodel, {

        Update_Data_Model <<- input$datamodel

        if(input$datamodel == 'Yes') {

            source("Authentication.R")

        }

    })

}

shinyApp(ui = ui, server = server)
库(闪亮)

谢谢。我将如何使用操作按钮?你能提供一个像上面那样使用观察事件的例子吗?@SteveM我已经更新了上面的答案,包括一个使用动作按钮的例子。谢谢。我将如何使用操作按钮?你能提供一个像上面那样使用观察事件的例子吗?@SteveM我已经更新了上面的答案,包括一个使用动作按钮的例子。