r - R Shiny:动态创建的 bucket_lists 的自定义样式
问题描述
我创建了一个函数,它可以根据先前的输入动态创建多个桶列表,而无需手动创建每个add_rank_list
.
但是,我无法设置它的样式,就像非动态创建存储桶列表一样。
下面的示例演示了这一点。
它使用 HTML 标记进行样式设置。class = c("default-sortable", "custom-sortable")
然后作为选项包含在bucket_list
. 但是,我无法在动态创建的 bucket_lists 代码中正确放置此代码。
library(shiny)
library(sortable)
ui <- fluidPage(
tags$style(
HTML("
.rank-list-container.custom-sortable {
border-color:#FFFFFF;
}
.custom-sortable .rank-list-item {
border-color:#FFFFFF;
}
")),
uiOutput("bucket_1_and_2"),
fluidRow( column(6,uiOutput("bucket_1")),column(6,
uiOutput("bucket_2")))
)
server <- function(input, output, session) {
bucket_1 <- reactive({lapply(c("Default","Styling"), function(x) {
add_rank_list(
text = "",
input_id = paste0("bucket_1_",x),
labels = x
)
})
})
output$bucket_1_and_2 <- renderUI({
do.call("bucket_list", args = c(
header = "",
group_name = "bucket_sort",
orientation = "horizontal",
# The following code does not function:
# class = c("default-sortable", "custom-sortable"),
bucket_1()
))
})
output$bucket_1 <- renderUI({
bucket_list(
header = "",
group_name = "bucket_sort",
orientation = "horizontal",
class = c("default-sortable", "custom-sortable"),
add_rank_list(
text = "",
input_id = "bucket_1",
labels = "Custom"
))
}
)
output$bucket_2 <- renderUI({
bucket_list(
header = "",
group_name = "bucket_sort",
orientation = "horizontal",
class = c("default-sortable", "custom-sortable"),
add_rank_list(
text = "",
input_id = "bucket_2",
labels = "Styling"
))
}
)
}
shinyApp(ui, server)
非常感谢帮助。
解决方案
我从未使用过bucked_list
,所以我不确定,但也许你想要:
output$bucket_1_and_2 <- renderUI({
bucketLists <- lapply(bucket_1(), function(x){
bucket_list(
header = "",
group_name = "bucket_sort",
orientation = "horizontal",
class = c("default-sortable", "custom-sortable"),
x
)
})
do.call(tagList, buckedLists)
})
推荐阅读
- apache-kafka - Kafka 主题无法删除或重新创建
- github - 如何让 GitHub 不计算编程语言分发的一些文件?
- javascript - 在网页上进行特殊活动时跟踪 javascript 文件
- javascript - NG002 错误:无法解析为 NgModule 类
- javascript - WebRTC 对等连接错误:无法设置远程应答 sdp:在错误状态下调用:kStable
- c# - 如何在 C# 中异步运行调度程序?
- c# - Ef core Odata 多对多
- git - Git repo 跟踪多个目录
- jupyter-lab - 您可以更改特定文件类型的 Jupyter Lab 文本编辑器设置吗?
- python - 在 VS Code 中调试 PIP 包中的 Python 代码