将动作按钮输入从一个模块传递到另一个模块的最佳方法

马顿·科瓦克斯(Marton Kovacs)

我正在开发一个更大的闪亮应用程序,我想包含一个可用作菜单的模块。在此模块中,您可以在其他独立模块之间进行选择,并通过单击操作按钮来激活一个模块。所选模块将以闪亮的模式弹出。

但是,我找不到将操作按钮输入从一个模块传递到另一个模块的好方法,因为如果我将其作为反应值传递,它将只能工作一次,而在关闭模块后将无法工作。我相信这是因为watchEvent不会在传递的反应值中记录任何变化。

您对如何解决此问题有任何建议吗?我需要完全不同的方法吗?

这是一个工作示例:

# Load packages
library(shiny)

# mod_1 ui
# This modules task is to pass the button press to mod_3 in order to activate a modal there.
mod_1_ui <- function(id){

  ns <- NS(id)
  tagList(
    actionButton(ns("actionbtn_1"), label = "actionbtn_1")
  )
}

# mod_1 server
mod_1 <- function(input, output, session){

    fruit <- reactiveVal(value = NULL)

    observeEvent(input$actionbtn_1, {
      fruit("banana")
    })

    return(list(
      activate_1 = reactive({fruit()})
      ))
}

# mod_2 has no ui
# This modules' task is to recieve the action button press from mod_1 and activate the modal if it is pressed.
mod_2 <- function(input, output, session, activate_1, activate_2){

  modal <- function() {
    ns <- session$ns

    modalDialog(
      footer = actionButton(ns("close_modal"), label = "Close modal"),
      textOutput(ns("fruit"))
    )
  }

  observeEvent(activate_1(), {
    if(activate_1() == "banana") {
      showModal(modal())}   

    })

  observeEvent(input$close_modal, {

    removeModal()
  })

  output$fruit <- renderText({
    paste("first mod:", activate_1())
  })

}

# app ui
app_ui <- 
    fluidPage(
      fluidRow(
      mod_1_ui("mod_1")
      )
    )

# app server
app_server <- function(input, output,session) {
  rv <- callModule(mod_1, "mod_1")
  callModule(mod_2, "mod_2", activate_1 = rv$activate_1)
}

# running the app
shinyApp(app_ui, app_server)
马顿·科瓦克斯(Marton Kovacs)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Terraform:将变量从一个模块传递到另一个模块

来自分类Dev

单击按钮将值从一个输入传递到另一个

来自分类Dev

如何从一个角度模块传递值到另一个模块?

来自分类Dev

将输出变量从一个模块传递到另一个模块时出现Terraform错误

来自分类Dev

将JSON数据从一个片段传递到另一个片段的最佳方法是什么

来自分类Dev

将JSON数据从一个片段传递到另一个片段的最佳方法是什么

来自分类Dev

将变量从一个Swift类传递到另一个的最佳方法?

来自分类Dev

继承 vbYesNo 从一个模块到另一个模块的响应

来自分类Dev

您可以将参数从一个动作传递到另一个动作吗?

来自分类Dev

如何使用 .apply 方法将输入从一个函数传递到另一个函数?

来自分类Dev

发出将数据从一个模块显示到另一个模块的问题

来自分类Dev

将数据从一个模式模块插入到另一个模式模块

来自分类Dev

将模型从一个动作传递到另一个asp.net MVC

来自分类Dev

如何从一个模块引用数据源到另一个模块,并将其作为变量传递给根模块?

来自分类Dev

模块从一个 .ts 文件到另一个的简单导入

来自分类Dev

使用jQuery将值从一个输入传递到另一个输入时遇到麻烦

来自分类Dev

如何将模块从一个python文件导入到另一个python文件?

来自分类Dev

将所有依赖项从一个Gradle模块导入到另一个

来自分类Dev

以角度将数据从一个组件传递到另一个组件的最佳实践

来自分类Dev

在 Xamarin 中将数据从一个视图传递到另一个视图的最佳方法是什么?

来自分类Dev

将代码从一个模块/类注入另一个

来自分类Dev

将选定单选按钮的值从一个 jsp 传递到另一个

来自分类Dev

SBT如何将输入从一个inputTask传递到另一个inputTask

来自分类Dev

SBT如何将输入从一个inputTask传递到另一个inputTask

来自分类Dev

如何在android studio中将字符串从一个模块传递到另一个模块?

来自分类Dev

如何将app = express()传递到另一个模块?

来自分类Dev

如何将道具从另一个js模块传递到Vue?

来自分类Dev

与ConfigurationManager耦合或将参数从一个传递到另一个

来自分类Dev

将String []从一个活动传递到另一个活动

Related 相关文章

  1. 1

    Terraform:将变量从一个模块传递到另一个模块

  2. 2

    单击按钮将值从一个输入传递到另一个

  3. 3

    如何从一个角度模块传递值到另一个模块?

  4. 4

    将输出变量从一个模块传递到另一个模块时出现Terraform错误

  5. 5

    将JSON数据从一个片段传递到另一个片段的最佳方法是什么

  6. 6

    将JSON数据从一个片段传递到另一个片段的最佳方法是什么

  7. 7

    将变量从一个Swift类传递到另一个的最佳方法?

  8. 8

    继承 vbYesNo 从一个模块到另一个模块的响应

  9. 9

    您可以将参数从一个动作传递到另一个动作吗?

  10. 10

    如何使用 .apply 方法将输入从一个函数传递到另一个函数?

  11. 11

    发出将数据从一个模块显示到另一个模块的问题

  12. 12

    将数据从一个模式模块插入到另一个模式模块

  13. 13

    将模型从一个动作传递到另一个asp.net MVC

  14. 14

    如何从一个模块引用数据源到另一个模块,并将其作为变量传递给根模块?

  15. 15

    模块从一个 .ts 文件到另一个的简单导入

  16. 16

    使用jQuery将值从一个输入传递到另一个输入时遇到麻烦

  17. 17

    如何将模块从一个python文件导入到另一个python文件?

  18. 18

    将所有依赖项从一个Gradle模块导入到另一个

  19. 19

    以角度将数据从一个组件传递到另一个组件的最佳实践

  20. 20

    在 Xamarin 中将数据从一个视图传递到另一个视图的最佳方法是什么?

  21. 21

    将代码从一个模块/类注入另一个

  22. 22

    将选定单选按钮的值从一个 jsp 传递到另一个

  23. 23

    SBT如何将输入从一个inputTask传递到另一个inputTask

  24. 24

    SBT如何将输入从一个inputTask传递到另一个inputTask

  25. 25

    如何在android studio中将字符串从一个模块传递到另一个模块?

  26. 26

    如何将app = express()传递到另一个模块?

  27. 27

    如何将道具从另一个js模块传递到Vue?

  28. 28

    与ConfigurationManager耦合或将参数从一个传递到另一个

  29. 29

    将String []从一个活动传递到另一个活动

热门标签

归档