使用来自 YAML header 的参数和闪亮的运行时 Rmd
using params from YAML header with a shiny runtime Rmd
我想使用 params
传递闪亮应用程序的设置。考虑下面的文档,当复选框被更改时,它只打印一条消息。我希望在 yaml header.
中使用 params
可以配置该消息
但是,这似乎失败了,因为 params
似乎仅在呈现文档时可用(请注意它在文档本身中正确打印消息)。这样对吗?有什么方法可以在运行时读取 params
吗?这在任何地方都有记录吗?
文件如下:
---
title: "Test"
output: html_document
runtime: shiny
params:
message: "hi"
---
Can see this: `r params$message`
```{r eruptions, echo=FALSE}
shiny::checkboxInput("cb","Checkbox")
```
```{r, echo=FALSE}
observeEvent(input$cb, {
# This works
message("clicked")
# This fails:
# Error in message(params$message) : object 'params' not found
try(message(params$message))
})
```
这通过将 params
设置为非局部变量来实现:
---
title: "Test"
output: html_document
runtime: shiny
params:
message: "hi"
---
```{r}
params <<- params
```
......
我想使用 params
传递闪亮应用程序的设置。考虑下面的文档,当复选框被更改时,它只打印一条消息。我希望在 yaml header.
params
可以配置该消息
但是,这似乎失败了,因为 params
似乎仅在呈现文档时可用(请注意它在文档本身中正确打印消息)。这样对吗?有什么方法可以在运行时读取 params
吗?这在任何地方都有记录吗?
文件如下:
---
title: "Test"
output: html_document
runtime: shiny
params:
message: "hi"
---
Can see this: `r params$message`
```{r eruptions, echo=FALSE}
shiny::checkboxInput("cb","Checkbox")
```
```{r, echo=FALSE}
observeEvent(input$cb, {
# This works
message("clicked")
# This fails:
# Error in message(params$message) : object 'params' not found
try(message(params$message))
})
```
这通过将 params
设置为非局部变量来实现:
---
title: "Test"
output: html_document
runtime: shiny
params:
message: "hi"
---
```{r}
params <<- params
```
......