Quarto:在 Quarto 网站中创建闪亮的交互式 qmd 文档

kbr*_*ner 3 r shiny quarto

我正在构建一个 Quarto 网站(https://quarto.org/docs/websites/),该网站应该有一些与 Shiny 交互工作的页面。

假设这个迷你交互式文件应命名为mini-app.qmd

---
title: "Old Faithful"
format: html
server: shiny
---

```{r}
sliderInput("bins", "Number of bins:", 
            min = 1, max = 50, value = 30)
plotOutput("distPlot")
```

```{r}
#| context: server
output$distPlot <- renderPlot({
  x <- faithful[, 2]  # Old Faithful Geyser data
  bins <- seq(min(x), max(x), length.out = input$bins + 1)
  hist(x, breaks = bins, col = 'darkgray', border = 'white')
})
```
Run Code Online (Sandbox Code Playgroud)

这就像一个普通.qmd文件一样,渲染、预览,一切都很棒。

但是,一旦此文件mini-app.qmd成为使用此交互式组件创建的四开本的一部分,quarto create-project mysite --type website就不再起作用了。

错误信息:

Error in shiny_prerendered_html(input_rmd, render_args) : 
Prerendered HTML file not found at /Users/.../quarto-website/mini-app.html
Calls: .main ... <Anonymous> -> shiny_prerendered_app -> shiny_prerendered_html
Execution halted
Run Code Online (Sandbox Code Playgroud)

如何构建一个包含一些与 Shiny 交互的页面的四开版网站?我想念什么?

kbr*_*ner 5

简短的回答:不可能,因为 quarto 网站是静态的,而 Shiny 不是。

长答案:https://github.com/quarto-dev/quarto-cli/discussions/1561