你如何在闪亮的 htmlwidget (joneditor) 上调用 javascript 方法?

How do you call a javascript method on a htmlwidget (jsoneditor) in shiny?

我正在尝试在闪亮的应用程序中使用 listviewer 包中的 jsonedit,并希望默认显示完全展开的树。在 jsonedit() 函数中没有执行此操作的选项,但底层 javascript 对象有一个 .expandAll() 方法可以执行此操作。如何从 R shiny 调用此方法?我下面的尝试在闪亮的应用程序中或直接在 R 中都不起作用。

library(shiny)
library(listviewer)
library(magrittr)
library(htmlwidgets)

x <- list(a=1,b=2,c=list(d=4,e='penguin'))

jsonedit(x, mode = 'view') %>% onRender("function(el,x,data) {this.expandAll();}")

shinyApp(
  ui = shinyUI(
    fluidPage(
      jsoneditOutput( "jsed" )
    )
  ),
  server = function(input, output){
    output$jsed <- renderJsonedit({
      jsonedit(x, mode = 'view') %>% onRender("function(el,x,data) {this.expandAll();}")
    })
  }
)
jsonedit(x, mode = 'view') %>% 
  onRender("function(el,x,data) {this.editor.expandAll();}")