【发布时间】:2016-03-06 10:01:23
【问题描述】:
我正在制作的闪亮应用在dashboardSidebar 中有多个子菜单项。我想将这些菜单项中的每一个链接到数据库。界面代码如下:
dashboardSidebar(
width = 150,
sidebarMenu(
menuItem("By States",
menuSubItem("AP", tabName = "AP"),
menuSubItem("ANP", tabName = "ANP"),
menuSubItem("BIH", tabName = "BIH"),
menuSubItem("TN", tabName = "TN")
)
),
sidebarMenu(
menuItem("Charts",
menuSubItem("AP", tabName = "APC"),
menuSubItem("Anp", tabName = "ANPC")
))
),
我已尝试使用服务器中的以下代码将这些子菜单中的每一个附加到数据库。
datasetInput <- reactive({
if (input$AP == "AP"){
"AP" = readRDS("data/AP.rds")
} else if (input$BIH == "BIH") {
"BIH" = readRDS("data/Bih.rds")
} else if (input$ANP == "ANP") {
"ANP" = readRDS("data/Anp.rds")
} else if (input$TN == "TN") {
"TN" = readRDS("data/tnd.rds")
}
})
我收到以下错误:
Error in if (input$AP == "AP") { : argument is of length zero
ERROR: [on_request_read] connection reset by peer
如何将 menuSubItem 链接到数据库?我已经尝试了以下工作正常,但我无法获得每个菜单下的子项。
工作正常的代码如下:
dashboardSidebar(
width = 150,
sidebarMenu(id = "tabs",
menuItem("AP", tabName = "AP"),
menuItem("ANP", tabName = "ANP"),
menuItem("BIH", tabName = "BIH"),
menuItem("TN", tabName = "TN")
),
sidebarMenu(id = "charts",
menuItem("AP", tabName = "APC"),
menuItem("Anp", tabName = "ANPC")
)
),
和服务器代码:
datasetInput <- reactive({
switch(input$tabs,
"AP" = readRDS("data/AP.rds"),
"BIH" = readRDS("data/Bih.rds"),
"ANP" = readRDS("data/Anp.rds"),
"TN" = readRDS("data/tnd.rds")
)
})
但这不是渲染子菜单。
【问题讨论】:
-
能否让您的上述代码可重现? stackoverflow.com/questions/5963269/…