0
탭 세트 패널에 데이터 테이블이있는 곳에 반짝 이는 응용 프로그램을 구현하려고하는데이 데이터 테이블에는 동일한 행과 열이 있습니다. 구현하고자하는 것은 사용자가 열을 정렬 할 때 탭을 변경하면 데이터가 첫 번째 열과 동일한 열 번호로 정렬된다는 것입니다. 나는 그것을 구현하려고하는이 어플리케이션을 가지고있다 :반짝이는 탭 사이에서 데이터 테이블 정렬을 유지하십시오.
library(DT)
library(shiny)
app <- shinyApp(
ui = fluidPage(
tags$head(
# hides the default search functionality
tags$style(
#HTML(".dataTables_filter, .dataTables_info { display: none; }"),
HTML(".shiny-input-container { display: none; }")
)
),
fluidRow(
column(10,
""
),
column(2,
# adding new page filter
uiOutput("pageFilter")
),
column(12,
tabsetPanel(id = "tab",
tabPanel('pressure',
DT::dataTableOutput('table1')
),
tabPanel('mtcars',
DT::dataTableOutput('table2')
)
)
)
)
),
server = function(input, output) {
global <- reactiveValues()
observe({
global$val <- input$table1_state$start/input$table1_state$length + 1
})
observe({
global$val <- input$table2_state$start/input$table2_state$length + 1
})
output$pageFilter <- renderUI({
numericInput("page", "Page", max(global$val,1), min = 1)
})
output$table1 <- DT::renderDataTable({
iris
}, options = list(pageLength = 15, stateSave = TRUE))
output$table2 = DT::renderDataTable({
mtcars
}, options = list(pageLength = 15, stateSave = TRUE))
# using new page filter
observeEvent({input$page; input$tab}, {
dataTableProxy("table1") %>% selectPage(global$val)
dataTableProxy("table2") %>% selectPage(global$val)
})
}
)
runApp(app, launch.browser = TRUE)
어떤 생각?
당신은 첫 번째 탭에서 열을 오름차순으로 정렬하면 ... 두 번째 탭의 테이블도 해당 열로 정렬됩니다. 오름차순? – BigDataScientist
네, 맞습니다. 감사. – JFernandez