我正在使用 Angular.js 和 Leaflet 构建一个非常基本的 Web 应用程序。
我正在尝试从 map 上的点击中获取纬度/经度信息,但我无法找到有关将 Leaflet 中的事件处理程序集成到 Angular 中的任何文档。
如果有人能指出我正确的方向,我会很兴奋。
下面的代码:
app.controller("eventcrtl", [ '$scope', function($scope) {
$scope.$on('leafletDirectiveMap.click', function(event){
console.log(event.latlng);
});
}]);
不起作用
最佳答案
要处理事件,首先在您的作用域上定义一个事件对象...
angular.extend($scope, {
events: {
map: {
enable: ['click', 'drag', 'blur', 'touchstart'],
logic: 'emit'
}
},
...
并将其添加到您的传单元素中。
<leaflet event-broadcast="events"></leaflet>
然后,您可以在点击处理程序的 args 参数中访问纬度和经度:
$scope.$on('leafletDirectiveMap.click', function(event, args){
console.log(args.leafletEvent.latlng);
});
这是一个工作演示:http://plnkr.co/PxRDhz6S5Svsg9FG4VRk
关于angularjs - 如何在 Angular 用户界面中获取传单 map 中点击的纬度/经度信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22875406/