2014-07-10 18 views

cevap

1

Benzer bir sorunla karşılaştım, düğmeler dinamik olarak benim durumumda oluşturulmamış olsa da. Vurgunun "dinamik olarak oluşturulmuş" yönü üzerinde olup olmadığı net değildir.

  • benim UI (id="increase" ve id="decrease") ikisini actionButtons var ve bir sahiptir: bu yüzden cevabım size yardımcı olmazsa çok ...

    benim cevap basitleştirmek için ben aşağıdaki sorunu azaltmak gerçek değeri göstermek için tamsayı değişkeni (var) ve metin çıktısı (id="actual_value"). Düğmelerden biri, değeri diğeri tarafından azaltılmalı ve çıkış, güncelleştirilmiş değeri göstermelidir.

çözüm:

shinyServer(function(input, output, session) { 
     increase <- reactive({ 
      if(input$increase == 0) return() 
      var <- var + 1 
      }) 

      decrease <- reactive({ 
      if(input$decrease == 0) return() 
      var <- var - 1 
      }) 

      actual.value <- reactive({ 
      increase() 
      decrease() 
      var 
      }) 

      output$actual_value <- renderText({ 
      paste("Actual value is: ", actual.value()) 
      }) 
    }) 

nedenle açıklama, iki reaktif giriş (yani, düğmeler) ve bunlara karşılık gelen iki reaktif ifadeler (increase ve decrease) olmasıdır. Üçüncü reaktif bir ifade (actual.value) ilk ikiye bağlıdır ve var'un gerçek değerini döndürür. Reaktif çıkış buna bağlıdır.

Yani iki düğme ( increase ve decrease) için iki ayrı reaktif ifadeleri ve üçüncü biri ( actual.value) sonra multiplex onları oluşturun. Bu, ancak bu tür bir sorunu çözmek için en iyi yaklaşımın olup olmadığını bilmiyorum, ancak bu işe yaramıyor.

İlgili konular