编程语言
首页 > 编程语言> > javascript-从server.R中的.js接收数据

javascript-从server.R中的.js接收数据

作者:互联网

如何接收在server.R的.js文件中创建的闪亮数据?

我正在使用leaflat库,并且需要扩展当前地图视图的LatLngBounds.我需要在server.R中使用此变量进行进一步处理.

所以我有

 mycode.js

//get bounds of extend of view
$(document).ready(function() { 

var myBounds = map.getBounds();
Shiny.onInputChange("bounds", myBounds);



});

我包括在ui.R中

tags$body(tags$script(src="mycode.js"))

那就是我的Server.R的样子:

  myBoundsR <- reactive(
  as.numeric(input$bounds)
  print(input$bounds)
  )

但是,如何从mycode.js接收server.R文件中的数据?

感觉像Shiny.addCustomMessageHandler仅接收.js(或.R)中的数据,而session $sendCustomMessage仅可用于.R文件中吗?我将用什么将.js文件中的内容发送到server.R文件中?

还是可以像在server.R文件中创建变量一样简单地使用绑定变量?

解决方法:

如果要获取地图边界,则可以使用input $map_bounds(如果map是您的传单地图的ID).

这是一个示例,(使用tutorial中的传单示例代码)

library(shiny)
library(leaflet)

r_colors <- rgb(t(col2rgb(colors()) / 255))
names(r_colors) <- colors()

ui <- fluidPage(
  leafletOutput("map")
    )
)

server <- function(input, output, session) {
  points <- cbind(rnorm(40) * 2 + 13, rnorm(40) + 48)

  observe({
    print(input$map_bounds)
  })
  output$map <- renderLeaflet({
    leaflet() %>%  addTiles() 
  })
}

shinyApp(ui, server)

标签:shiny-server,javascript,r,shiny
来源: https://codeday.me/bug/20191009/1883136.html