gpt4 book ai didi

r - DT Shiny : Multipage editable DataTable jumps to first page after an edit

转载 作者:行者123 更新时间:2023-12-02 19:54:30 24 4
gpt4 key购买 nike

我有以下程序。正如标题所示,每次我在第一页之后的页面上编辑项目时,表格都会返回到第一页。我希望表格保留在我正在编辑的页面上,而不跳回第一页。

我在这里的其他线程上看到了这个问题,但他们的解决方案似乎不适用于当前版本的 DTshiny 包。

library(shiny)
library(DT)
shinyApp(
ui = fluidPage(
DTOutput('x1'),
verbatimTextOutput("print")
),
server = function(input, output, session) {
x = reactiveValues(df = NULL)

observe({
df <- iris
df$Date = Sys.time() + seq_len(nrow(df))
x$df <- df
})

output$x1 = renderDT(x$df, selection = 'none', editable = TRUE)

proxy = dataTableProxy('x1')

observeEvent(input$x1_cell_edit, {
info = input$x1_cell_edit
str(info)
i = info$row
j = info$col
v = info$value


x$df[i, j] <- isolate(DT::coerceValue(v, x$df[i, j]))
})

output$print <- renderPrint({
x$df
})
}
)

如有任何帮助,我们将不胜感激

最佳答案

你可以这样做:

library(shiny)
library(DT)
shinyApp(
ui = fluidPage(
DTOutput('x1'),
verbatimTextOutput("print")
),
server = function(input, output, session) {

dat <- reactiveVal(cbind(iris, Date = Sys.time() + seq_len(nrow(iris))))

output$x1 = renderDT(isolate(dat()), selection = 'none', editable = TRUE)

proxy = dataTableProxy('x1')

observeEvent(input$x1_cell_edit, {
info = input$x1_cell_edit
dat(editData(dat(), info, proxy, resetPaging = FALSE))
})

output$print <- renderPrint({
dat()
})
}
)

关于r - DT Shiny : Multipage editable DataTable jumps to first page after an edit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57350883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com