Javascript 在可反应的闪烁模式中选择输入值不更新(绑定取消闪烁时出现问题)

Javascript 在可反应的闪烁模式中选择输入值不更新(绑定取消闪烁时出现问题),javascript,r,shiny,Javascript,R,Shiny,我有一个selecInput在一个reactable in Shining中,但是输入没有更新。我想做这样的事情,但在可反应的: 库(闪亮) 图书馆(tidyverse) 库(可反应) runApp(列表( ui=基本页面( h2(“表格数据”), 可反应输出(“tbl\U react\U mtcars”), h2(“选定”), 文本输出(“tbl_mtcars”) ), 服务器=功能(输入、输出){ 输出$tbl\u反应\u mtcars% 切片(1)%>% as_tible()%>% 选择

我有一个selecInput在一个reactable in Shining中,但是输入没有更新。我想做这样的事情,但在可反应的:

库(闪亮)
图书馆(tidyverse)
库(可反应)
runApp(列表(
ui=基本页面(
h2(“表格数据”),
可反应输出(“tbl\U react\U mtcars”),
h2(“选定”),
文本输出(“tbl_mtcars”)
),
服务器=功能(输入、输出){
输出$tbl\u反应\u mtcars%
切片(1)%>%
as_tible()%>%
选择(1:4)%>%
变异(list=as.character(selectInput(inputId=“list_1”,label=NULL,choices=1:5))%>%
可反应(列=列表(
list=colDef(html=T,align=“center”)
))
})
输出$tbl_mtcars以下是一种方法:

library(shiny)
library(reactable)

js <- "
$(document).on('shiny:value', function(e) {
  if(e.name === 'rtbl'){
    setTimeout(function(){Shiny.bindAll(document.getElementById('rtbl'))}, 0);
  }
});
"

ui <- basicPage(
  tags$head(tags$script(js)),
  h2("Table Data"),
  reactableOutput("rtbl"),
  h2("Selected"),
  textOutput("selection")
)

dat <- iris[1:5,]
dat$select <- c(
  as.character(selectInput(inputId = "list_1", label = NULL, choices = 1:5)),
  rep("", 4)
)

server <- function(input, output, session){

  output$rtbl <- renderReactable({
    reactable(dat, columns = list(
      select = colDef(html = TRUE, align = "center")
    ))
  })

  output$selection <- renderText({
    if(is.null(input$list_1)){
      NA
    }else{
      input$list_1
    }
  })

}

shinyApp(ui, server)
库(闪亮)
库(可反应)

js Stephane Laurent,你能看看这两个问题吗?非常感谢!
library(shiny)
library(reactable)

js <- "
$(document).on('shiny:value', function(e) {
  if(e.name === 'rtbl'){
    setTimeout(function(){Shiny.bindAll(document.getElementById('rtbl'))}, 0);
  }
});
"

ui <- basicPage(
  tags$head(tags$script(js)),
  h2("Table Data"),
  reactableOutput("rtbl"),
  h2("Selected"),
  textOutput("selection")
)

dat <- iris[1:5,]
dat$select <- c(
  as.character(selectInput(inputId = "list_1", label = NULL, choices = 1:5)),
  rep("", 4)
)

server <- function(input, output, session){

  output$rtbl <- renderReactable({
    reactable(dat, columns = list(
      select = colDef(html = TRUE, align = "center")
    ))
  })

  output$selection <- renderText({
    if(is.null(input$list_1)){
      NA
    }else{
      input$list_1
    }
  })

}

shinyApp(ui, server)