ymaps
Yandex Maps on-demand promise-based widget loader.
- Appends Yandex Maps API script to the
document body.
- Returns a promise which resolves as soon as the script has loaded and the
API is ready.
This way the widget doesn’t load until it’s needed to decrease page load time.
View on CodeSandbox →
Quickstart
Install from the command line:
npm install ymaps
Use in your code to load the widget:
import ymaps from 'ymaps';
ymaps
.load()
.then(maps => {
const map = new maps.Map('your-map-container', {
center: [-8.369326, 115.166023],
zoom: 7
});
})
.catch(error => console.log('Failed to load Yandex Maps', error));
To use another language simply pass a valid src
to ymaps.load
ymaps.load('https://api-maps.yandex.ru/2.1/?lang=en_US').then(maps => {
});
The information about other options is available in the
API docs.
Please check out known issues to see not supported options.
Running the tests
npm test
Known issues
load
parameter, except when it's set to package.full
is causing an error
"TypeError: s is not a constructor". To reproduce, try to pass
"//api-maps.yandex.ru/2.1/?lang=en_US&load=Map"
to ymaps.load
in the
example above. PR is welcome!
Contributing
Please read CONTRIBUTING.md for details on our code of
conduct, and the process for submitting pull requests to us.
Versioning
SemVer is used for versioning. For the versions available,
see the tags on this repository.
License
This project is licensed under the MIT License - see the LICENSE file
for details.