【发布时间】:2014-09-15 14:05:50
【问题描述】:
我正在尝试将 iframe 构建到我闪亮的应用程序中。困难在于它的反应性,它应该根据用户输入加载不同的图像。
我尝试构建一个正常的 iframe,效果很好:
ui.R
column(3,
tags$iframe(src="http://www.parlament.ch/SiteCollectionImages/profil/225x225/3014.jpg", height=242, width=242, frameborder=0, seamless="seamless")
)
但我的反应性有问题。我以为我只需将正确的链接粘贴到tags$iframe 中,但不幸的是这不起作用。这是我的文件:
server.R
library(shiny)
shinyServer(function(input, output) {
output$naame <- renderUI({
members <- data.frame(name=c("Name 1", "Name 2", "Name 3"), nr=c(3014, 2565, 2670))
selectInput("Member",
label=h5("Choose a person"),
choices=members[,2],
selected=NULL)
})
loadpic <- reactive({
if (!is.null(input$Member)){
#input$Member can be any number, I use 3014 as an example. bildurl is then
#http://www.parlament.ch/SiteCollectionImages/profil/225x225/3014.jpg
zahhl <- paste0(members[which(members==input$Member),2])
bildurl <- paste0("http://www.parlament.ch/SiteCollectionImages/profil/225x225/", sep="", zahhl, sep="", ".jpg")
return(bildurl)}
})
output$imagehead <- renderText({
loadpic()
})
ui.R
shinyUI(fluidPage(titlePanel("Choose your preferred name"),
sidebarLayout(
sidebarPanel(
fluidRow(#Chooses Name
column(6,
uiOutput("naame")
)),
mainPanel(fluidRow(column(3,tags$iframe(src=htmlOutput("imagehead"), height=242, width=242))))))
感谢任何帮助。谢谢。
【问题讨论】:
-
请提供一个可重现的最小示例来说明您遇到的问题。
-
@jdharrison:我更新了代码。我希望它是可重现的......