Ошибка not a LatLng or LatLngLiteral: not an Object считываая данные google-maps

142
24 апреля 2018, 02:22

Всем привет! В Laravel 5.6 / vue.js 2.5 приложении хочу отобразить google-maps карту используя https://www.npmjs.com/package/vue2-google-maps плагин

И с сервера делаю responce:

return response()->json([
    'error_code'                      => 0,
    'message'                         => '',
    'markers'                         => [
        ['lat'=>51.5085000000000000, 'lng'=>-0.1258000000000000, 'name'=> 'Location 1 Folk festival in <b>London</b>. Join us ! '  ]
    ],
], HTTP_RESPONSE_OK );

В vue-темплейты:

<template>
<div>
    <gmap-map
            :center="center"
            :zoom="zoom"
            style="width: 100%; height: 100%"
    >
        <gmap-cluster>
            <gmap-marker
                    :key="index"
                    v-for="(m, index) in markers"
                    :position="m.position"
                    :clickable="true"
                    icon="/star-red.png"
                    :draggable="true"
                    @click="toggleInfoWindow(m,index)"
            ></gmap-marker>
        </gmap-cluster>
        <gmap-info-window :options="infoOptions" :position="infoWindowPos" :opened="infoWinOpen" @closeclick="infoWinOpen=false">
            <info-content :content="infoContent"></info-content>
        </gmap-info-window>
    </gmap-map>
</div>
</template>

import * as VueGoogleMaps from 'vue2-google-maps'; // https://www.youtube.com/watch?v=ntjhLWH2krY
Vue.use(VueGoogleMaps, {
    load: {
        key: '###',
        libraries: 'places', // This is required if you use the Autocomplete plugin
        v: '3.30',
    }
})
fetchLocations() {
    this.is_page_loaded = false
    axios.get(this.api_version_link + 'get_future_concerts_list').then((response) = > {
        this.markers = response.data.markers
        console.log("this.markers::")
        console.log(this.markers)
    }).catch((error) = > {
        console.log("error::")
        console.log(error)
    });
}

И в консоли ошибка :

not a LatLng or LatLngLiteral: not an Object"

принтскпин вывода :

погуглив, я нашел пример с использованием объекта geo в выводе:

return response()->json([
    'error_code'                             => 0,
    'message'                                => '',
    'markers'                         => [
        'geo'=>['lat'=>51.5085000000000000, 'lng'=>-0.1258000000000000, 'name'=> 'Location 1 Folk festival in <b>London</b>. Join us ! '  ]
    ],
], HTTP_RESPONSE_OK );

Но та же ошибка...

Вопрос: как правильно?

Answer 1

:position="m.position"

А где в response свойство position?

READ ALSO
Как нарисовать слово жирным шрифтом и преобразовать результат в Path?

Как нарисовать слово жирным шрифтом и преобразовать результат в Path?

У меня есть шрифтМне нужно нарисовать слово с помощью этого шрифта, используя font-weight: bold to canvas

167
Как передать value инпутов в cookies ?

Как передать value инпутов в cookies ?

Задаю значение? через функцию setCookie и передаю value 4 инпутов в функцию storeValuesПотом достаю значение функцией getCookie, но в резльтате в куках: undefined

148
Функция меняющая цвета js

Функция меняющая цвета js

Требуется создать функцию при исполнении которой, все элементы в html/css коде цвета #FAFAFA, меняли цвет на #333

162