HTML 随用户在 Shiny 中的输入而变化的代码
HTML code that changes with user's input in Shiny
这是我的问题的基础:
- 简而言之,假设
ui.R
中的用户可以使用常规文本输入法插入艺术家的姓名。然后将其保存在 input$artist_name
. 中
- 切换到
server.R
,然后使用一些中间调用和计算显示有关艺术家的热门曲目的一些统计数据。然后我使用 renderPlot()
在 output$Plot
中放置一个图。
- 这就是我 运行 遇到麻烦的地方。 我想包括一个播放器(只使用基本 HTML,这不是问题所在)允许用户播放曲目。但是,在我看来,我似乎需要使用我在
server.R
中获得的信息(因为这是我了解最受欢迎的歌曲的地方,随后是 URL)到 "push" 曲目的 URL 回到 ui.R
以便我可以使用 HTML()
函数将播放器包含在面板中。这可能吗?对我来说,我想做的似乎与你可以用 uiOutput()
和 renderUI()
做的类似,尽管显然不是根据用户的自定义 UI输入而是一些自定义 HTML 代码,具体取决于输入。
非常感谢任何帮助!
我不确定你到底在问什么,但在服务器中创建任意 HTML 并将其发送到 UI 并不难。这是一个例子:
library(shiny)
ui =fluidPage(
textInput("test","Write here"),
uiOutput("example")
)
server=shinyServer(function(input, output, session) {
output$example <- renderUI({
HTML(paste0("<div style='color:red;'>",input$test,"</div>"))
})
})
shinyApp(ui=ui,server=server)
这是我的问题的基础:
- 简而言之,假设
ui.R
中的用户可以使用常规文本输入法插入艺术家的姓名。然后将其保存在input$artist_name
. 中
- 切换到
server.R
,然后使用一些中间调用和计算显示有关艺术家的热门曲目的一些统计数据。然后我使用renderPlot()
在output$Plot
中放置一个图。 - 这就是我 运行 遇到麻烦的地方。 我想包括一个播放器(只使用基本 HTML,这不是问题所在)允许用户播放曲目。但是,在我看来,我似乎需要使用我在
server.R
中获得的信息(因为这是我了解最受欢迎的歌曲的地方,随后是 URL)到 "push" 曲目的 URL 回到ui.R
以便我可以使用HTML()
函数将播放器包含在面板中。这可能吗?对我来说,我想做的似乎与你可以用uiOutput()
和renderUI()
做的类似,尽管显然不是根据用户的自定义 UI输入而是一些自定义 HTML 代码,具体取决于输入。
非常感谢任何帮助!
我不确定你到底在问什么,但在服务器中创建任意 HTML 并将其发送到 UI 并不难。这是一个例子:
library(shiny)
ui =fluidPage(
textInput("test","Write here"),
uiOutput("example")
)
server=shinyServer(function(input, output, session) {
output$example <- renderUI({
HTML(paste0("<div style='color:red;'>",input$test,"</div>"))
})
})
shinyApp(ui=ui,server=server)