javascript - 它可能在 L.geoJson 上添加 .setView 吗?
问题描述
对不起,又是我,这次我需要在 L.geoJson 上添加某种类型的 .SetView,以便更清楚。每次单击项目时,我都会尝试让 L.control.layers 重定向视图(坐标),我认为这样做的正确方法是:
var rutavistaimss = L.geoJson(rutavs,{color:'#1212fe'}).setView([25.4197,-100.991295], 13);
但不起作用。
她这是我的代码:
var rutavistaimss = L.geoJson(rutavs,{color:'#1212fe'});
var rutavspos = L.geoJson(rutavspostal,{color:'#1212fe'});
var rutavscen = L.geoJson(rutavscentro,{color:'#1212fe'});
var ruta8ampli = L.geoJson(ruta8AmpMo,{color:'#6d418b'});
var ruta8moimss = L.geoJson(ruta8imss,{color:'#6d418b'});
var ruta18D = L.geoJson(ruta18d,{color:'green'});
var rutaperife = L.geoJson(rutaperi,{color:'#de3030'});
var rutamirasi = L.geoJson(rutamira,{color:'#f2ec00'});
//paradas de ruta vista imss
var paradasrutavs = paradasrutavspre;
var rutatodoeuno = L.layerGroup([paradasrutavspre,rutavistaimss]);
var capaderutas = {
"ruta vista imss": rutatodoeuno,
'ruta vista postal':rutavspos,
'ruta vista centro':rutavscen,
"ruta 18 directa": ruta18D ,
"ruta periferico": rutaperife,
"ruta mira sierra": rutamirasi,
"ruta 8 ampliacion morelos": ruta8ampli,
'ruta 8 morelos imss':ruta8moimss
};
L.control.layers(null,capaderutas,{collapsed: false}).addTo(map);
我希望任何人都可以帮助我,并感谢您的时间。
解决方案
图层控件有一些有用的事件。如果您只是想让视图平移/缩放以包含您选择的叠加层上的功能,您可以这样做:
无论您在哪里实例化地图
map.on('overlayadd', function(e) {
map.fitBounds(e.layer.getBounds());
});
推荐阅读
- css - Tailwind Grid 插件未安装
- java - 使用扫描仪在构造函数中调用 set 方法
- python - 我无法从 python 数据库中的表中获取列
- pdf - 如何从 tex 生成和 ps 生成的 PDF 中获取信息?
- three.js - ThreeJS 等距球体点
- angular - 角度路由问题 - url 更新但不是页面
- python - 安装 whl 文件 - Whl 不支持错误
- tableau-api - Tableau 仪表板自定义视图无法保存在 Tableau Public 服务器上
- h2 - 嵌入式数据库的多个连接
- c# - 在 Ubuntu 18 上使用 nginx 的 Asp.Net Core SSL