Я попытался создатьосветное приложение с функцией seq()
в приложениях.
header <- dashboardHeader(title = 'Testing' ,titleWidth = 300)
sidebar <- dashboardSidebar(uiOutput("sidebarpanel"), width = 300)
body <- dashboardBody(uiOutput("body"))
uix <- dashboardPage(header, sidebar, body)
serverx <- function(input, output, session){
output$sidebarpanel <- renderUI({
div(
sidebarMenu(id="tabs",
menuItem("Tes 1", tabName = "tes1", icon = icon("dashboard"), selected = TRUE)
)
)
})
output$body <- renderUI({
tabItems(tabItem(tabName = "tes1",
fluidRow(column(2, textInput("s1", "From :", value = 1))
,column(2, textInput("s2", "To", value = 7))
),
textOutput("result")
)
)
})
segment_low <- reactiveValues(ba=NULL)
segment_high <- reactiveValues(ba=NULL)
results <- reactiveValues(ba=NULL)
toListen <- reactive({
list(input$s1, input$s2)
})
observeEvent(toListen(),{
segment_low$ba <- input$s1 %>% as.numeric()
segment_high$ba <- input$s2 %>% as.numeric()
})
observe({
results$ba <- seq(segment_low$ba,segment_high$ba, 1)
})
output$result <- renderText({
results$ba
})
}
shinyApp(uix, serverx)
В этом синтаксисе я бы создал переменную с именем results$ba
, потому что я хочу увеличить это значение в следующем время. Но получается ошибка:
Warning: Error in seq.default: 'from' must be of length 1
[No stack trace available]
Может кто-нибудь помочь мне, как решить эту проблему? Поскольку эта ошибка произошла только в том случае, если я поместил реактивные значения в функцию seq()
, а при вводе ввода c, например seq(2,5,1)
, ошибка не будет возвращена. И я уже поместил начальные значения value
для каждого входа в функцию textInput()
.
Kindle нужна ваша помощь, разработчики! Большое спасибо.