如何使动作按钮仅在每次按下时才起作用?

豪尔赫·埃尔南德斯

您好,感谢您阅读我。我目前正在尝试制作一个简单的闪亮应用程序,允许您过滤数据框,但我希望每次按下按钮时过滤器都会更新。它第一次工作,但显然之后即使您不按下按钮,observeEvent 也会保持激活状态并且信息会被过滤。有没有办法避免这种情况?

代码如下:

library(shiny)
library(dplyr)
library(shinyWidgets)

x <- tibble(
  val1 = 1:5,
  val2 = sample(letters,5)
)

shinyApp(
  ui = fluidPage(
    column(width = 3, pickerInput("filt", "filter",
                                  choices = x$val1,
                                  selected = x$val1,
                                  multiple = TRUE
                                  ),
           actionButton("ready", "filter data")
           ),
    column(width = 6, textOutput("text"))
  ),
  server = function(input, output, session){
    
    
    observeEvent(input$ready,{
      
      output$text <- renderText({
        
        x <- x |> 
          filter(val1 %in% input$filt)
        
        
        print(x$val2)
        
      })
      
      
    })
    
    
    
  }
)

我认为问题出在这部分:

observeEvent(input$ready,{
      
      output$text <- renderText({
        
        x <- x |> 
          filter(val1 %in% input$filt)
        
        
        print(x$val2)
        
      })
      
      
    })

非常感谢您的帮助

贾希·扎米

使用bindEvent闪亮的功能

library(shiny)
library(dplyr)
library(shinyWidgets)

x <- tibble(
  val1 = 1:5,
  val2 = sample(letters,5)
)

shinyApp(
  ui = fluidPage(
    column(width = 3, pickerInput("filt", "filter",
                                  choices = x$val1,
                                  selected = x$val1,
                                  multiple = TRUE
    ),
    actionButton("ready", "filter data")
    ),
    column(width = 6, textOutput("text"))
  ),
  server = function(input, output, session){
    
    output$text <- renderText({
      
      x <- x |> 
        filter(val1 %in% input$filt)
      
      print(x$val1)

    }) |> 
      bindEvent(input$ready)
    
    
    
    
  }
)

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

按下按钮时,setState仅在第二次按下时起作用

如何创建一个循环来在每次按下按钮时指定不同的动作?

按下按钮时如何锁定动作?

Javascript-动画仅在第一次按下按钮时起作用

某些键在按下时不起作用,仅在按住时才起作用

如何创建仅在首次按下时起作用的“ keydown”事件?

每次用户按下按钮时如何进行迭代?

每次按下按钮时,如何使scrollView移动?

每次按下按钮时如何打开GIF

每次按下按钮时如何停止面板加载

我想根据 QMenu 中选中的动作更改每次按下按钮时播放的声音

按下按钮时ng-click不起作用

setCustomAnimations在后退按钮按下时不起作用

当我按下按钮时,CheckBox不起作用

按下按钮时加载更多内容不起作用

按下时onPress for按钮不起作用

按下时导航抽屉下方的按钮不起作用

按下按钮时发生的动作-快速

SwiftUI:按下按钮时的动作

按下按钮时重复功能的动作

每次按下按钮时重复声音

如何从许多小部件中获取输入,但仅在按下提交按钮时才重新计算?

如何使事件僅在您在 pygame 中按下鍵盤時才起作用

每次使用android studio按下按钮时,如何让1个按钮播放随机声音

每次按下按钮时更改按钮颜色 kivy

旋转框仅在单击上/下指示器时才起作用,在通过输入数字进行编辑时不起作用

如何确保一个活动仅在多次按下按钮后才打开一次

如何在浮动动作按钮按下时重建小部件?

每次按下“ WPF Animmation”按钮时,我如何重播相同的动画