gpt4 book ai didi

javascript - Vue-google-map 自动完成两种方式绑定(bind)不起作用

转载 作者:搜寻专家 更新时间:2023-10-30 22:13:39 25 4
gpt4 key购买 nike

我正在使用 vue-google-maps ,并且我已经实现了该插件并且它可以完美地工作,但是有一个小问题(或者我无法正确完成)。当我实现自动完成功能时,它以一种方式工作。我输入地址, map 将我指向所选地点,但当我拖动指针时,它不会更新搜索字段中的地址。我正在使用 Vuejs 2vue-google-maps

这就是我正在做的:

<template>
<div>
<label>
AutoComplete
<GmapAutocomplete :position.sync="markers[0].position" @keyup.enter="usePlace" @place_changed="setPlace">
</GmapAutocomplete>
<button @click="usePlace">Add</button>
</label>
<br/>

<gmap-map
:center="center"
:zoom="7"
map-type-id="terrain"
style="width: 100%; height: 500px"
>
<gmap-marker
@dragend="updateMaker"
:key="index"
v-for="(m, index) in markers"
:position="m.position"
:clickable="true"
:draggable="true"
@click="center=m.position"
></gmap-marker>

</gmap-map>

</div>
</template>

<script>

export default {
data() {
return {
center: {lat: 10.0, lng: 10.0},
markers: [{
position: {lat: 11.0, lng: 11.0}
}],
place: null,
}
},
description: 'Autocomplete Example (#164)',
methods: {
setPlace(place) {
this.place = place
},
setDescription(description) {
this.description = description;
},
usePlace(place) {
if (this.place) {
var newPostion = {
lat: this.place.geometry.location.lat(),
lng: this.place.geometry.location.lng(),
};
this.center = newPostion;
this.markers[0].position = newPostion;
this.place = null;
}
},
updateMaker: function(event) {
console.log('updateMaker, ', event.latLng.lat());
this.markers[0].position = {
lat: event.latLng.lat(),
lng: event.latLng.lng(),
}
},
}
}
</script>

最佳答案

我不确定这是否受支持。您可能必须自己实现。

在您的 updateMaker() 方法中,您可以使用 google.maps.Geocoder() 自己查找地址名称:

updateMaker: function(event) {
const geocoder = new google.maps.Geocoder()
geocoder.geocode({ 'latLng': event.latLng }, (result, status) => {
if (status === google.maps.GeocoderStatus.OK) {
// set the input field value with address:
console.log(result[0].formatted_address)
}
})
}

关于javascript - Vue-google-map 自动完成两种方式绑定(bind)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52639743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com