2016-08-03 14 views
0

Ich habe eine allgemeine Frage zu reaktiven Werten und globalen Variablen in Shiny. Mein Ziel ist es, Werte in einem Datenrahmen in verschiedenen reaktiven Umgebungen einzugeben und der Datenrahmen sollte immer auf dem neuesten Stand sein. Ich brauche eigentlich keine Umgebungen, um auf meinen Datenrahmen zu reagieren, wie sie es bei anderen Eingaben tun. Ich würde folgendermaßen vorgehen: Erstellen Sie am Anfang einen globalen Datenrahmen und tragen Sie die Werte mit "< < -" ein. Ich sehe keinen Grund, hier reaktive Werte zu verwenden. Wie auch immer, ich bin Shiny ziemlich neu und würde Ihre Meinung zu diesem Thema sehr schätzen.Shiny in R: Reaktive Werte im Vergleich zu globalen Variablen

+0

Warum brauchen Sie eine solche globale Datenrahmen, die nicht in irgendeiner reaktiven Funktion (?)? Wo und wann liest du diese Variable? Können Sie ein Beispiel veröffentlichen? Trotzdem sollten globale Variablen wann immer möglich vermieden werden. Normalerweise ist es möglich. –

+0

@ Patrick Röcke. Danke für deinen Kommentar. Ich denke, meine Frage war ein wenig unklar. Tatsächlich möchte ich Werte in den Datenrahmen in verschiedenen reaktiven Funktionen eingeben, aber es ist nicht so, dass eine reaktive Funktion auf das Ereignis einer Änderung im Datenrahmen reagieren muss (wie eventReactive()). Das Entscheidende für mich ist, dass der Datenrahmen immer auf dem neuesten Stand ist und ich diese Werte in verschiedenen reaktiven Umgebungen verwenden kann. Verstehst du was ich meine? –

+1

Ein "aktueller Wert", der in der reaktiven Funktion verwendet wird, sollte aus meinem Verständnis heraus reaktiv sein. In dieser Frage habe ich Hilfe bekommen, um eine globale Variable mit reactiveValues ​​zu eliminieren: http://stackoverflow.com/questions/33722757/update-handsontable-by-editing-table-and-or-eventreactive –

Antwort

-1

Wie schlagen Sie vor, Ihre Datenbank auf dem neuesten Stand zu halten? Wenn Sie eine App für die Aktualisierungsdatenbank erstellen, müssen Sie Benutzereingaben dafür bereitstellen.

Wenn Ihre Datenbankaktualisierung von Benutzereingaben abhängig ist, muss Ihre Datenbank reaktiv sein, um auf Benutzereingaben reagieren zu können.

-Code wird folgende Struktur haben:

ui <- shinyUI(pageWithSidebar(
mainPanel(selectInput()))) 

server <- shinyServer(function(input, output, session) { 
database_update <- function(input$user_input) 
} 
Verwandte Themen