Extends L.esri.
L.esri.
is an abstraction for submitting geocoding requests. You can find more information and the source code for this plugin here.
Constructor
Constructor | Description |
---|---|
L.esri.Geocoding.geocode(<Object>options) | Creates a new |
You can pass any options you can pass to L.esri.Task. The url
will be the ArcGIS geocoding service by default but a custom geocoding service can also be used.
Methods
Method | Returns | Description |
---|---|---|
text(<String>text) | this | The text to geocode. If you specify |
address(<String>text) | this | The street and house number to be geocoded. |
neighborhood(<String>text) | this | The neighborhood to be geocoded. |
city(<String>text) | this | The city to be geocoded. |
subregion(<String>text) | this | The subregion to be geocoded. |
region(<String>text) | this | The region to be geocoded. |
postal(<String>text) | this | The postal code to be geocoded. |
country(<String>text) | this | The country to be geocoded. |
category(<String>category) | this | The optional category to search for. A list of valid categories can be found here. |
within(<L.LatLngBounds>bounds) | this | A bounding box used to filter results. |
nearby(<L.LatLng>latlng, <Integer>distance) | this | Increase the match score of candidates close to a location passed within the request. |
run(<Function>callback, <Object>context) | XMLHttpRequest | Executes the request chain and accepts the response callback. |
Examples
<link rel="stylesheet" href="./esri-leaflet-geocoder.css">
<script src="./esri-leaflet-geocoder.js"></script>
L.esri.Geocoding.geocode({apikey: 'YOUR_ACCESS_TOKEN'}).text('380 New York St, Redlands, California, 92373').run(function (err, results, response) {
if (err) {
console.log(err);
return;
}
console.log(results);
});
L.esri.Geocoding.geocode({apikey: 'YOUR_ACCESS_TOKEN'}).address('380 New York St').city('Redlands').region('California').postal(92373).run(function (err, results, response) {
if (err) {
console.log(err);
return;
}
console.log(results);
});
// Using .within()
var southWest = L.latLng(37.712, -108.227);
var northEast = L.latLng(41.774, -102.125);
var bounds = L.latLngBounds(southWest, northEast); // Colorado
L.esri.Geocoding.geocode({apikey: 'YOUR_ACCESS_TOKEN'}).text('Denver').within(bounds).run(function (err, response) {
if (err) {
console.log(err);
return;
}
console.log(response);
});
// Using .nearby()
var denver = L.latLng(37.712, -108.227);
L.esri.Geocoding.geocode({apikey: 'YOUR_ACCESS_TOKEN'}).text('Highlands Ranch').nearby(denver, 20000).run(function (err, response) {
if (err) {
console.log(err);
return;
}
console.log(response);
});
Results Object
In the samples above the results
object will look like this.
{
results: [
{
latlng: L.LatLng,
text: 'Formatted Address',
score: 100, // certainty ranking of the match
properties: {
// additional info like specific address components (Country Code etc.)
}
}
]
}