如何修复 flexdashboard 中的下载按钮侧边栏问题
Posted
技术标签:
【中文标题】如何修复 flexdashboard 中的下载按钮侧边栏问题【英文标题】:How to fix download button sidebar issue in flexdashboard 【发布时间】:2016-09-27 19:29:21 【问题描述】:我在侧边栏面板的 flexdashboard 中添加了一个下载按钮,但是当我编织 .RMD 时它会出现在主面板中。你能指导我如何解决它吗?
这是我正在尝试完成的一个最小示例
---
title: "Download Button in Wrong Panel"
output:
flexdashboard::flex_dashboard:
vertical_layout: scroll
runtime: shiny
---
```r setup, include=FALSE
## Setting up required libraries
library(flexdashboard)
library(dplyr)
library(shiny)
library(knitr)
dataset <- read.csv(somefile)
```
Inputs .sidebar
-----------------------------------------------------------------------
### Input Filters
```r input
## Metric 1
selectInput('metric',
'Choose Metric',
names(dataset %>% select(-default_column)),
selected = "default_metric")
## Download Button
downloadButton('downloadData','Download Result Set')
```
Outputs
-----------------------------------------------------------------------
### List of Customers
```r output
subset_dataset <- reactive(
dataset[,c("default_column",input$metric)]
)
renderTable(
subset_dataset()
,
include.rownames = FALSE)
downloadHandler(filename = function()
paste('resultset-', Sys.Date(), '.csv', sep='')
,
content = function(file)
write.csv(subset_dataset(), file, row.names = FALSE)
)
```
仪表板截图如下
谢谢!
【问题讨论】:
【参考方案1】:没关系,我已经修复了它,在发布问题之前没有尝试过它是相当愚蠢的,但如果有人遇到类似的问题,解决方案就在这里。
下载处理函数也必须简单地放在侧边栏面板中,就可以了。
Inputs .sidebar
-----------------------------------------------------------------------
### Input Filters
```r input
## Metric 1
selectInput('metric',
'Choose Metric',
names(dataset %>% select(-default_column)),
selected = "default_metric")
## Download Button
downloadButton('downloadData','Download Result Set')
downloadHandler(filename = function()
paste('resultset-', Sys.Date(), '.csv', sep='')
,
content = function(file)
write.csv(subset_dataset(), file, row.names = FALSE)
)
【讨论】:
仅供参考,runtime: shiny_prerendered
文档也是如此以上是关于如何修复 flexdashboard 中的下载按钮侧边栏问题的主要内容,如果未能解决你的问题,请参考以下文章
如何更改 flexdashboard selectInput 中的 y
在 flexdashboard 中添加下载处理程序时分页被切断
文件下载后如何修复冻结页面?(TreeView SelectedNodeChanged中的TransmitFile)
runjs 在 flexdashboard 中更改 observeEvent 的位置?