在 R/Shiny 中,为什么使用 map 创建选项卡面板不起作用?

In R/Shiny why using map to create tabpanels is not working?

提问人:JohnBones JohnBones 提问时间:11/19/2022 更新时间:11/19/2022 访问量:65

问:

我想达到以下相同的结果:

tabsetPanel(

        # Hide the tab values.
        # Can only switch tabs by using `updateTabsetPanel()`

        tabPanel(1, "Panel 1 content"),
        tabPanel(2, "Panel 2 content"),
        tabPanel(3, "Panel 3 content")
      )

使用此代码如下。为什么它不起作用?

 tabsetPanel(

       map(1:3,~  tabPanel(.x,title = paste0("Panel ",.x," content"))

      ))

谢谢

r 闪亮

评论


答:

2赞 Jamie 11/19/2022 #1

map 返回 tabsetPanel 无法完全识别的结构中的列表。如果你把所有东西都包装在里面,对它的调用应该可以工作。do.call

do.call(tabsetPanel, map(1:3,~  tabPanel(.x,title = paste0("Panel ",.x," content"))))