在 shiny 应用程序的 UI 和 server 中分别添加以下代码:
在 UI 中:
tags$script(src="https://cdn.jsdelivr.net/npm/@widgetbot/crate@3.2.6/dist/crate.full.js")
在 server 中:
observe({
session$sendCustomMessage(type = "loadWidgetBot", message = list(
server = "widgetbot.com",
channel = "channel-id"
))
})
在这个例子中,我们假设您使用了一个名为 WidgetBot 的 JavaScript 库,用于向 shiny 应用程序添加交互式聊天组件。我们还假设您已经获取了正确的 channel-id,并将其作为参数传递给 JavaScript 库。
在上述代码中,我们首先在页面的 head 部分添加了一个 JavaScript 库的链接。然后,我们在 server 中使用 observe 函数来监听 WidgetBot 的加载事件,并在加载完成后向应用程序发送自定义消息。这个自定义消息将包含 WidgetBot 组件所需的所有信息(例如服务器地址和频道 ID),以便在 shiny 应用程序中正确地渲染组件。