Если оператор с переменной для использования в нескольких местах - PullRequest
0 голосов
/ 18 апреля 2019

Я пытаюсь создать блестящую панель инструментов, где я должен использовать оператор if, чтобы определить, как должна обрабатываться переменная. в этом случае оператор if назначает кратное число (1 или 0), которое затем умножается на несколько переменных позже в коде. По какой-то причине я не могу заставить оператор IF работать вне функции renderUI. Я пытался сделать это реактивной функцией, но это тоже не сработало.

server <- function(input, output, session) {
  LinerCost <- reactive ({ input$LLDPE_Liner/100 * DirectRM_Cost$Rs_KG[15] +
      input$Other_Additive_Liner/100 * DirectRM_Cost$Rs_KG[20]}) 

  reactive({if (input$lamination == "lam_yes") {
    lam_rm_multiple = 1} else {
      lam_rm_multiple = 0
    }}) 

  LamCost <- reactive({ LamCost * lam_rm_multiple })
  LinerCost <- reactive ({LinerCost * liner_rm_multiple})

  Weight <- reactive ({ 
    as.numeric(input$final_lam_weight) * lam_rm_multiple 
  }) 

  RMcost <- reactive({
    ((as.numeric(input$final_unlam_weight) / CombinedWeight()) * UnLamCost())
  }) 
}

shinyApp(ui, server)

Здесь я хочу, чтобы lam_rm_multiple было присвоено значение 0 или 1, а затем оно умножается на переменные и принудительно устанавливает их в 0, как требуется. В настоящее время я получаю сообщение об ошибке: Предупреждение: Ошибка в: объект 'lam_rm_multiple' не найден

...