Добавление маркера к местоположению пользователя в листовке - PullRequest
0 голосов
/ 30 апреля 2020

Я довольно новичок в листовке и просто ударился о кирпичную стену, пытаясь заставить этот маркер работать.

Пока у меня есть следующий код, но когда я проверяю консоль в своем браузере, он вылетает ошибка

Uncaught ReferenceError: позиция не определена в отображении. html: 153

mappage - это имя html файла.

    <div id="mapid"></div>

    <script>
        var mymap = L.map('mapid').setView([57.149860, -2.102930], 13);
        L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
            attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
        }).addTo(mymap);

        //var to capture user position
        var userPosition = position.coords.latitude + "," + position.coords.longitude;


        var marker = L.marker([userPosition]).addTo(mymap);
    <script>

Я также использовал следующий код в моем файле js, чтобы проверить, правильно ли работает API геолокации и правильно ли он отображает все запрошенные данные в журнале консоли.

navigator.geolocation.getCurrentPosition(function (position) {
console.log(position);
console.log(position.coords.latitude)
console.log(position.coords.longitude)})

1 Ответ

2 голосов
/ 30 апреля 2020

Вы должны установить маркер в функции getCurrentPosition:

navigator.geolocation.getCurrentPosition(function (position) {
console.log(position);
console.log(position.coords.latitude)
console.log(position.coords.longitude)
var marker = L.marker([position.coords.latitude,position.coords.longitude]).addTo(mymap);
})
...