我试图将我的闪亮仪表板移植到flexdashboard,并且遇到了服务器端渲染对象的问题。
在此示例中,我有一个呈现在服务器端的输入选择器
output$weeklyWeekSelector <- renderUI({
selectInput('weeklyWeeks',
label = 'Uker',
choices = as.list(weeks),
multiple=TRUE,selectize=FALSE,
selected = weeks[1:26],
size=35)
})
然后显示在仪表板上:
uiOutput("weeklyWeekSelector")
但是,如果我执行以下操作,这在我第一次加载页面时效果很好:
1.加载页面(工作正常!)
2.调整页面大小(使其重新加载)
然后,我显示的输入选择器将完全从仪表板上消失。不仅如此,它还会从网站的所有其他实例中消失(我将其存储在闪亮的服务器上)。然后,需要将仪表板/发光应用程序重新加载到Shinyserver(我只是复制新文件)中,以使UI再次出现。
当我渲染ggvis绘图服务器端并将其传递时,也会出现此问题。
当我同时使用这两个问题时:
1. Shinyserver(dockerfile在这里:https://github.com/raubreywhite/shiny)
2. rmarkdown::在RStudio上运行
我在这里附加了.Rmd文件和数据:https://github.com/rstudio/flexdashboard/issues/61
我不知道这是否是flexdashboard的错误,或者我做错了什么,因为我不了解flexdashboard和Shinydashboard之间的不同思维方式。
谢谢!
我一直在研究更多内容,而且如果我完全重新加载页面,这似乎也发生了。因此,在网站重新加载后,uiOutput似乎消失了。
最佳答案
我解决了这个问题。 .rmd文件开头是我的YAML。
旧/错误的YAML:
---
title: "NorMOMO"
output:
flexdashboard::flex_dashboard:
orientation: rows
vertical_layout: fill
---
新的/正确的YAML:
---
title: "NorMOMO"
output:
flexdashboard::flex_dashboard:
orientation: rows
vertical_layout: fill
runtime: shiny
---