簡體   English   中英

R Shiny:將反應值傳遞給模塊的問題

[英]R Shiny: Issue passing reactive values to module

這應該很容易,但它並不像我期望的那樣工作。 我想要做的就是在將反應元素從主服務器功能傳遞到模塊時獲得“第一燈”。 這個玩具示例的要點很簡單:用戶在 textInput() 框中鍵入任何內容,該值將顯示在兩個 verbatimTextOutput() 框中,一個來自主服務器,另一個在模塊服務器中調用。 我正在尋找兩個框來顯示用戶輸入的內容,但模塊框沒有。 這告訴我模塊沒有正確接收參數,我沒有看到我的錯誤。 謝謝!

library(shiny)

ui <- function(request) {
    fluidPage(
        column(12, textInput("par", "Parameter", value = "")),
        column(12, parametersMDUI(0)),
        column(12, verbatimTextOutput("view", placeholder = TRUE))
          )
}

server <- function(input, output, session) {
    param <- reactive({ input$par })
    callModule(parametersMDServer, 0, param)
    output$view <- renderText({ param() })
}


parametersMDUI <- function(id) {
    ns <- NS(id)

    tags$div(
        column(12, verbatimTextOutput("symbolName", placeholder = TRUE)),
        id = ns('parametersMDui')
    )
}


parametersMDServer <- function(input, output, session, param) {
    ns = session$ns

    output$symbolName <- renderText({ param })
}

shinyApp(ui = ui, server = server, enableBookmarking = "server")

似乎您在tags$div(..., id = "my_output_id")使用了tags$div(..., id = "my_output_id")然后嘗試使用renderUI訪問 div ? 這行不通。 使用“標准”

# server side
output$my_output_id <- renderUI({ ... })

# client side
uiOutput("my_output_id")

反而。 除此之外,您忘記在parametersMDUI使用ns函數。 我不會再發布您的代碼的任何固定版本,因為您的錯誤開始重復,您真的需要能夠自己發現它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM