AngularJS directive for the Leaflet Javascript Library. This software aims to easily embed maps managed by leaflet on your Leaflet project.
See some basic examples:
- Basic example
- Custom parameters example
- Single marker example
- Marker addition example
- Marker with label example
- Markers example
- Polyline example
- Tile changer example
- Legend example
- GeoJson example
- Layers example
- Events example
- Overlays example
- Google Maps example
- Accessing the leaflet map object
- Accessing the leaflet map object of two maps
To see it in action, go to the main page where you can find more examples and some documentation:
You must include the leaflet-directive dependency on your angular module:
var app = angular.module("demoapp", ["leaflet-directive"]);
After that, you can change the default values of the directive (if you want) on your angular controller. For example, you can change the tiles source, the maxzoom on the leaflet map or the polyline path properties.
angular.extend($scope, {
defaults: {
tileLayer: "http://{s}.tile.opencyclemap.org/cycle/{z}/{x}/{y}.png",
maxZoom: 14,
path: {
weight: 10,
color: '#800000',
opacity: 1
}
}
});
If you want to set the start of the map to a precise position, you can define the "center" property of the scope (lat, lng, zoom). It will be updated interacting on the scope and on the leaflet map in two-way binding. Example:
angular.extend($scope, {
center: {
lat: 51.505,
lng: -0.09,
zoom: 8
}
});
Finally, you must include the markup directive on your HTML page, like this:
<leaflet defaults="defaults" center="center" height="480px" width="640px"></leaflet>