首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在R中更新来自两个不同来源的numericInput?

在R中更新来自两个不同来源的numericInput可以通过以下步骤实现:

  1. 首先,确保已经安装了shiny包,可以使用以下命令进行安装:
代码语言:txt
复制
install.packages("shiny")
  1. 创建一个app.R文件,并在其中引入shiny包:
代码语言:txt
复制
library(shiny)
  1. app.R文件中创建一个shinyApp函数,用于定义应用程序的UI和服务器逻辑:
代码语言:txt
复制
shinyApp(
  ui = fluidPage(
    # 在这里定义UI组件
  ),
  server = function(input, output) {
    # 在这里定义服务器逻辑
  }
)
  1. 在UI部分,可以使用numericInput函数创建两个输入框,分别来自两个不同的来源:
代码语言:txt
复制
numericInput("input1", "输入1", value = 0)
numericInput("input2", "输入2", value = 0)
  1. 在服务器逻辑部分,可以使用observeEvent函数监听两个输入框的变化,并更新另一个输入框的值:
代码语言:txt
复制
observeEvent(input$input1, {
  updateNumericInput(session, "input2", value = input$input1)
})

observeEvent(input$input2, {
  updateNumericInput(session, "input1", value = input$input2)
})

完整的app.R文件如下所示:

代码语言:txt
复制
library(shiny)

shinyApp(
  ui = fluidPage(
    numericInput("input1", "输入1", value = 0),
    numericInput("input2", "输入2", value = 0)
  ),
  server = function(input, output) {
    observeEvent(input$input1, {
      updateNumericInput(session, "input2", value = input$input1)
    })
    
    observeEvent(input$input2, {
      updateNumericInput(session, "input1", value = input$input2)
    })
  }
)

这样,当输入框1的值发生变化时,输入框2的值会被更新为输入框1的值;同样地,当输入框2的值发生变化时,输入框1的值会被更新为输入框2的值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券