【问题标题】:Use input$ within inputPanel in rmarkdown document在 rmarkdown 文档的 inputPanel 中使用 input$
【发布时间】:2014-06-23 14:36:24
【问题描述】:

我想创建一个带有两个数字输入(a 和 b)的输入面板。 numericInput b 的最大值需要 numericInput a 的值。

---
title: "test input"
runtime: shiny
output: html_document
---

```{r, echo = FALSE}
inputPanel(
  numericInput("a", "A", 80, 
               min = 1, max = 100),

  numericInput("b", "B", 15, 
               min = 1, max = input$a)
)
```

这给出了错误:

在没有活跃的反应上下文的情况下不允许操作。

【问题讨论】:

    标签: r shiny r-markdown


    【解决方案1】:

    不使用shinyApp:

    ```{r, echo=FALSE}
      inputPanel(
        numericInput("a", label="A", min = 1, max = 100, value = 80),
        uiOutput('a')
    )
    
      output$a <- renderUI({
        numericInput("b", label= "B", min = 1, max = input$a, value = 15)
     }
    )
    ```
    

    【讨论】:

      【解决方案2】:

      您好,您可以在经典的闪亮应用中进行操作:

      ```{r, echo = FALSE}
      shinyApp(
      
        ui = fluidPage(
          inputPanel(
            numericInput("a", "A", 80, 
                     min = 1, max = 100),
            uiOutput("numericInput_reactive")
            )
        ),
      
        server = function(input, output) {
          output$numericInput_reactive <- renderUI({
            numericInput("b", "B", 15, 
                     min = 1, max = input$a)
          })
        }
      )
      ```
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-30
        • 1970-01-01
        • 2019-02-06
        • 1970-01-01
        • 2018-11-05
        • 2021-08-20
        相关资源
        最近更新 更多