Ich habe Probleme mit der Zuordnung von Werten innerhalb einer reaktiven Funktion zu reaktiven Werten. Abhängig von der Eingabe $ id möchte ich dem korrekten reaktiven Wert einen Wert zuweisen. Ich bin jedoch nicht in der Lage, die reaktiven Werte zu schreiben, obwohl ich die korrekten Werte beobachten kann, die meine reaktive Funktion zum Beispiel in einer Beobachtungsumgebung aufrufen. Schließlich möchte ich, abhängig von der Eingabe $ top, den Input $ a1 zu reac.val $ tab1 zuweisen und $ a2 in reac.val $ tab2 eingeben. Ich habe meine ui.R und server.R Dateien unten angehängt.Probleme bei der Zuweisung reaktiver Werte innerhalb reaktiver Funktionen
ui.R
library(shiny)
shinyUI(navbarPage("My App", id = "top",
tabPanel("Infos", id = "info",
textInput("name", "last name", "")),
navbarMenu("Menu",
tabPanel("tab1",
column(3, textInput(inputId="a1", label="input1", value = 0 , width = 100)),
column(4, tableOutput("aim1"))),
tabPanel("tab2",
column(3, textInput(inputId="a2", label="input2", value = 0 , width = 100)),
column(4, tableOutput("aim2"))))
))
server.R
library(shiny)
shinyServer(function(input, output) {
val <- data.frame(first = numeric(1), second = numeric(1))
reac.val <- reactiveValues("tab1" = val, "tab2" = val)
observeTab <- reactive({
tab <- input$top
if (tab != "Infos") {
tab.df <- reac.val[[tab]]
first.val <- as.numeric(input$a1)
second.val <- as.numeric(input$a2)
tab.df$tab1 <- first.val
tab.df$tab2 <- first.val
reac.val[[tab]] <- tab.df
reac.val[[tab]]
}
})
output$aim1 <- renderTable({
reac.val[[input$top]]
})
output$aim2 <- renderTable({
reac.val[[input$top]]
})
})