繁体   English   中英

在 R Leaflet 中实现(javascript)插件

[英]Implementing a (javascript) plugin in R Leaflet

我正在用 R 构建一个 Leaflet 应用程序。

我想使用这个插件https://github.com/Turbo87/leaflet-sidebar但是,我不知道从哪里开始。

在 R 中实现 Javascript Leaflet 插件的指南无法提供帮助。 有没有人有任何我可以遵循的步骤/指导/代码来在我的 R Leaflet 中实现插件? 任何帮助将不胜感激。

这是我目前所在的位置:

sidebarPlugin <- htmlDependency("leaflet-sidebar", "0.2.0",
                            src = c(href = "https://github.com/Turbo87/leaflet-sidebar.git"),
                            script = "src/L.Control.Sidebar.js")

registerPlugin <- function(map, plugin) {
  map$dependencies <- c(map$dependencies, list(plugin))
  map}

testLeaflet <- leaflet() %>%
  addTiles %>%
  addPolylines(data = dijkjson)%>%
  #register plugin on this map instance
  registerPlugin(sidebarPlugin)%>%
  addControl("Test2", position = "topright")%>%
  # Add your custom JS logic here. The `this` keyword
  # refers to the Leaflet (JS) map object.
  onRender("function(el, x) {
       var sidebar = L.control.sidebar('sidebar', {
       position: 'left'}).addTo(this);
       map.addControl(sidebar).addTo(this);
       sidebar.show().addTo(this);
       }")

也许你还没有解决你的问题。 第一步是确保您的 htmlDependency 源确实存在。 使用您的路径,我得到以下响应:{"error":"Not Found"}

jsdelivr通过 npm 和 github 以 application/javascript 格式提供大多数可用的 js 库。 使用它而不是原始 github 路径,您可以尝试:

sidebarPlugin <- htmltools::htmlDependency("L.Control.Sidebar", "0.2.1",
                            src = c(href = 'https://cdn.jsdelivr.net/gh/Turbo87/leaflet-sidebar@0.2.1/src'), 
                            script = 'L.Control.Sidebar.js', stylesheet = 'L.Control.Sidebar.css')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM