r - 在 Rmarkdown Shiny 应用程序中使用服务器端 updateSelectizeInput
问题描述
我正在尝试使用 updateSelectizeInput 服务器端将大量地址加载到 Rmarkdown 格式的 Shiny 应用程序中的 selectizeInput 框中。一切正常,但是当您选择过滤值时,它似乎正在重新加载 NULL 值。这是一个可重现的例子。任何帮助将不胜感激。谢谢!
---
title: "car_example"
output: html_document
runtime: shiny
---
```{r echo=FALSE}
df <- mtcars
output$uiaddress <- renderUI({
selectizeInput(
'address', label = "Address", choices = NULL
)
})
observeEvent(input$address, {updateSelectizeInput(session, 'address',
choices = df$hp, server = TRUE)
})
```
## SelectizeInput
```{r echo=FALSE}
uiOutput("uiaddress")
```
解决方案
我可以通过添加 ignoreInit 和 once 到 observeEvent 的末尾来解决这个问题
observeEvent(input$address, {updateSelectizeInput(session, 'address',
choices = df$hp, server = TRUE)
}, ignoreInit = TRUE, once = TRUE)
推荐阅读
- python - 无法使用 selenium 和 python 发送推文
- python - 如何根据时间戳合并 3 个 Pandas 数据框?
- stripe-payments - Stripe - 如何使用 Connect (Express) 获取购买者的收费信息?
- c# - 以编程方式为 Office 365/Exchange Online 创建约会
- python - Flask:发送一个 zip 文件,然后将其删除
- python - Keras fit_generator:检查目标时出错:预期activation_32有4维,但得到形状为(4、4)的数组
- jquery - 如何从 js.erb 视图中选择这个 div 元素
- javascript - 如何计算用户输入并在同一页面上显示(javascript)
- julia - 我什么时候应该使用`==` vs `===` vs `isequal`
- python - 获取字典枚举为列表