Leaflet.js 中是否可以同时使用 center 和 bounds 属性?

Is it possible to simultaneously use both the center and bounds attributes in Leaflet.js?

我有一个 Web 应用程序,使用 Angular.js 和 angular-leaflet-directive 编写,可在地图上显示道路选择。我已经包含了一些书签以便于导航到某些区域,因此地图范围导航基于使用 centerzoom 属性。

我现在还包括确定道路在当前地图范围内是否可见的功能,使用:
map.getBounds().contains([roadLatA, roadLngA]) || map.getBounds().contains([roadLatB, roadLngB]),其中 A 和 B 指道路的终点。

这在页面加载时完美运行,但在任何类型的交互(例如拖动、缩放事件)之后当再次调用 getBounds() 时,它 returns 边界框的每个角都有相同的 LatLng ,这是设置为默认 center 坐标的值。经过大量重构后,我找不到成功合并 centergetBounds() 的方法。

angular-leaflet-directive 或 leaflet.js 是否可能或是否存在限制,这意味着设置地图范围的两种方法相互冲突?

我现在已经解决了这个问题,问题是在调用 leafletData.getMap() 时没有传入地图元素的 id

这种行为让我感到震惊,因为最初的 getMap() 调用(没有 id)返回了正确的地图对象,但在后续调用中(在用户交互之后)$promise没有得到解决,所以我没有得到 undefined 或任何其他错误。我猜 getBounds() 函数随后在错误的地图对象上被调用。