Невозможно определить логику, которая указывает ползунку обновлять (закрывать, а затем открывать) (возможно, связывать и отменять привязку) при щелчке строки таблицы данных DT.
Я рассмотрел: вкладка специфичнабоковая панель в shinydashboard
Откройте новую вкладку в строке таблицы, нажмите
Автоматическое всплывающее окно правой боковой панели при нажатии на элемент MenuItem в shinydashboardPlus
Но не удалось соединить связывание и открепление при щелчке строки таблицы данных.
ui.R
library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
library(shinythemes)
library(leaflet)
library(DT)
library(shinyjs)
ui <- dashboardPage(
dashboardHeader(title = "Basic List"),
dashboardSidebar(div(id = 'tab1_sidebar',
sidebarMenu(
textInput("text", "Text input:")
))),
dashboardBody(useShinyjs(),
theme = shinytheme("spacelab"),
fluidRow(
HTML("<div class='col-sm-12' style='min-width: 400px !important;'>"),
column(dataTableOutput(outputId = "table"), width = 12)
))
)
server.R
library(shiny)
library(leaflet)
library(DT)
csvBase <-
read.csv(
'https://docs.google.com/spreadsheets/d/e/2PACX-1vSfiMFwfucJl7CXEufaGcZjRS8B6cRZgsHngkqx5moe5edBGtyCc-cQW4Oe_7kdDC0zcdXRBAbWA0GA/pub?output=csv',
header = TRUE,
sep = ",",
stringsAsFactors = F
)
shinyServer(function(input, output, session) {
addClass(selector = "body", class = "sidebar-collapse")
selected_row <- reactive({
if (!is.null(input$rows)) {
shinyjs::addClass(selector = "aside.control-sidebar", class = "control-sidebar-open")
} else {
shinyjs::removeClass(selector = "aside.control-sidebar", class = "control-sidebar-open")
}
})
output$table <- DT::renderDataTable(
DT::datatable({
data <- csvBase
},
class = "display nowrap compact",
selection = "single",
filter = "top",
editable = TRUE,
rownames = FALSE,
extensions = c('Buttons', 'KeyTable'),
options = list(
keys = TRUE,
stateSave = TRUE,
searchHighlight = TRUE,
scrollX = TRUE,
dom = 'Blfrtip',
buttons = c('copy', 'csv', 'excel', 'pdf', 'print'),
columnDefs = list(list(
visible = FALSE, targets = c()
))
))
)
})
При запуске приложения боковая панель автоматически закрывается.
Обратите внимание, что в приложении включено расширение клавиатуры.
Я пытаюсь установить фокус на первую ячейку таблицы данных, и UPON перемещает мышь на строку выше или строку ниже, боковую панель.(если открыто) закрывается, а затем открывается.
Причины ОТКРЫТЬ / ЗАКРЫТЬ в конечном итоге состоят в том, чтобы в конечном итоге заполнить ввод текста на боковой панели данными из отдельной строки отдельной таблицы данных.
Любые предложения приветствуются.