R Блестящий URL-адрес с закладкой не отображает график при использовании ссылки - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь использовать R Shiny для отметки состояния в URL-адресе. Приложение работает нормально при первом использовании и поддерживает URL-адрес в порядке, но когда я использую URL-адрес или просто обновляю sh браузер, приложение не показывает график, который должен отображаться.

javascript консоль сообщает: «Ошибка: util.addPathParams не реализует экранирование»

Также возникает эта ошибка: Необработанное отклонение обещания: TypeError: a.LegacyGlobal.LP_explicit_ignored не является функцией. (В 'a.LegacyGlobal.LP_explicit_ignored (document, e)', 'a.LegacyGlobal.LP_explicit_ignored' не определено)

Кажется, ему не нравится текст в URL-адресе.

Я обнаружил, что могу повторить любую ошибку, которую совершаю, взяв «привет, блестящий» в уроке 1 на сайте rstudio и добавив код закладки. Отредактированные строки я пометил комментариями. https://shiny.rstudio.com/tutorial/written-tutorial/lesson1/

Вот код ниже на shinyapps.io: https://jackprior.shinyapps.io/shinypractice/

#attempt to add bookmarking to rstudio lesson 1 and replicate bug
#https://shiny.rstudio.com/tutorial/written-tutorial/lesson1/
library(shiny)
plotmsg =function(txt){return(plot(1:5,main=txt))}  #this is new 
ui <-function(request){ fluidPage(                  #UI wrapped in a function
  titlePanel("Old Faithful Geyser Data"),
  sidebarLayout(
    sidebarPanel(
      sliderInput("bins",
                  "Number of bins:",
                  min = 1,
                  max = 50,
                  value = 30),
      textInput("w","name",value="a plot title"), #this is new
      bookmarkButton()      # This is new
    ),

    mainPanel(
      plotOutput("distPlot"),
      plotOutput("plot"),   # This is new
    )
  )
)
}

server <- function(input, output) {
  output$plot <- renderPlot(plotmsg(input$w)) #this is new
  output$distPlot <- renderPlot({
    x    <- faithful[, 2] 
    bins <- seq(min(x), max(x), length.out = input$bins + 1)
    hist(x, breaks = bins, col = 'darkgray', border = 'white')
  })
}

shinyApp(ui = ui, server = server, enableBookmarking = "url") #this has added parameter

1 Ответ

0 голосов
/ 07 мая 2020

Проблема заключалась в использовании "w" в качестве входного параметра. Shinyapps.io кодирует & w во что-то, что он не может оценить, и вешает реактивную систему на постоянную оценку. Использование другого имени для входа исправило это. Похоже на ошибку shinyapps.io, если только пользователь не должен знать, что нельзя использовать "w". Я использовал его только для минимизации длины URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...