代码之家  ›  专栏  ›  技术社区  ›  Vikram

如何在shinn中对模块化函数使用RenderUI?

  •  2
  • Vikram  · 技术社区  · 6 年前

    当我运行这段代码时,它会生成一个输出。它只有一个示例模块化功能和一个主应用程序。它工作得很好,但当我试图通过renderUI渲染它时,它不起作用。我知道这里一定有个我不知道的诡计。如果你知道的话请告诉我。

    library(shiny)
    
    mod_ui <- function(id){
    
    ns<-NS(id) 
    
            fluidPage(
            plotOutput(ns('plot'))
        )
    }
    
    mod_server <- function(input, output, session) {
          output$plot<-renderPlot(
          plot(iris)
        )  
    }
    
    main_ui<-
        mod_ui('any_id')
        # uiOutput('any_id')
    
    
    main_server<-function(input,output,session){
        callModule(mod_server,'any_id')
    
        # output$app<- renderUI(
            # mod_ui('any_id')  
        # )
    
    }
    
    shinyApp(main_ui, main_server)
    

    library(shiny)
    mod_ui <- function(id) {
        ns <- NS(id)
        fluidPage(plotOutput(ns('plot')))
      }    
    
    
    mod_server <- function(input, output, session) {
        output$plot <- renderPlot(plot(iris))
      }
    
    
    main_ui <-
        # mod_ui('any_id')
        uiOutput('any_id')
    
    
    main_server <- function(input, output, session) {
        callModule(mod_server, 'any_id')
    
        output$app <- renderUI(mod_ui('any_id'))
    
    }
    
    shinyApp(main_ui, main_server)
    

    我试图找到一个解决这个问题的方法,这样我就可以为不同的用户创建一个带有条件页的基本登录页。我相信我现在肯定有什么东西我没有,但我仍然需要任何解决办法。请至少给我指出正确的方向。

    0 回复  |  直到 6 年前