---
title: "Untitled"
runtime: shiny
output:
flexdashboard::flex_dashboard:
orientation: columns
vertical_layout: fill
---
```{r setup, include=FALSE}
library(shiny)
library(shinydashboard)
library(shinycssloaders)
library(DT)
library(dplyr)
library(formattable)
library(tidyverse)
```{r}
selectInput("Tic", "", choices = c("", as.character(iris$Species)), selected = "")
actionButton("Submit", "Submit")
actionButton("Clear", "Clear")
div(
style = "height:100px;",
tableOutput("my_controls")
)
tableOutput("table")
clear_at_submit <- reactiveVal(-1)
submit_at_clear <- reactiveVal(-1)
observeEvent(input$Submit, {
clear_at_submit(input$Clear)
})
observeEvent(input$Clear, {
submit_at_clear(input$Submit)
})
my_control_object <- reactive({
tibble(
SubmitButton = input$Submit,
ClearButton = input$Clear,
clear_at_submit = clear_at_submit(),
submit_at_clear = submit_at_clear(),
TicValue = input$Tic,
`submit_at_clear() != input$Submit?` = submit_at_clear() != input$Submit
)
})
output$my_controls <- renderTable({
my_control_object()
})
data2 <- eventReactive(input$Submit, {
if (input$Tic != "") {
iris <- iris %>% filter(Species %in% input$Tic)
}
})
output$table <- renderTable({
if (submit_at_clear() != input$Submit) {
data2()
} else {
NULL
}
})