情节未出现在预渲染的“闪亮”中

时间:2018-06-20 21:22:10

标签: r shiny

我正在用learnr编写教程,并希望包含一些“其他使用Shiny的交互形式”(来自learnr tutorial)。我是Shiny的新手,但主要通过复制和粘贴进行管理-可以使用几个示例。除非以下内容:(代码摘自视频讲座“如何从Shiny开始”的第二部分,代码示例为“ 08-reactiveValues.R”)

我的YAML标头:

output: 
    learnr::tutorial:
        progressive: true
        allow_skip: true
runtime: shiny_prerendere

我的R块:

```{r my-dist-ui, context="render"}
actionButton(inputId = "norm", label = "Normal")
actionButton(inputId = "unif", label = "Uniform")
plotOutput("hist")

```

```{r my-dist-server, context="server"}

rv <- reactiveValues(data = rnorm(100))

observeEvent(input$norm, { rv$data <- rnorm(100) })
observeEvent(input$unif, { rv$data <- runif(100) })

output$hist <- renderPlot({ hist(rv$data) })
```

我可以看到为该图保留了一个空白空间,但没有图。单击按钮时没有任何变化。没有错误消息。

是否某些命令(例如reactValues或observeEvent)不能与runtime: shiny_prerendered一起使用? (上面的示例在控制台中以其原始形式运行。但是,另一个带有绘图的示例-Geyser示例-确实可以在我的Learnr Rmd文件中使用。)

我在Intel Mac OS X 10_13_5,rmarkdwon 1.10,闪亮1.1.0和学习者0.9.2。上使用R Studio 3.5.0和RStudio 1.1.453。

1 个答案:

答案 0 :(得分:0)

我发现了(哑)错误:

我在同一文件中为其他测试图使用了相同的plotOutput变量:plotOutput("hist")

当我将其更改为plotOutput("hist2")并相应地将服务器上下文更改为output$hist2 <- renderPlot({ hist(rv$data) })时,我的所有图都出现了,整个学习者文件再次正常工作。