Zdravim,
mam takovy dotaz. Mam tento HTML file (viz nize) a nejsem spokojen jak mi s nim IntelliJ pracuje.
1. Nefunguje mi naseptavani pro
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.17/vue.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.6.1/lodash.min.js"></script>
coz bych jeste pochopil, ale
2. Nefunguje mi nasptavani ani pro muj lokalni soubor:
<script src="vue-google-maps.js"></script>
3. To bych jeste zaskripal zubama, ale ono mi to ani nenajde usage od teto funkce:
onMarkerClick: function (input) {
this.markers.splice(this.markers.indexOf(input), 1)
}
4. Nejen ze to nenajde usage, ale nefunugje mi ani refactoring, zmena se nepropise do HTML templatu.
5. Zlute mi to zvyraznuje cely tento radek, kdyz na to kliknu da to nabidku "Add google-map-marker to custom tags" coz je vysoce otravne, a ani nevidim ze bych z too mel nejaky uzitek.
<google-map-marker v-for="marker in markers" :position="marker.position" @g-click="onMarkerClick(marker)"/>
========
Podtrzeno a secteno, prijde mi, ze to ma IntelliJ tak rozbite, ze by mi lepe fungoval obycejny text editor jako je VIsual Studio Code, kde refactoring je obycejny find and replace. Ale ja jsem zvykly na Ideu.
Nevite jestli se to neda nejak v IntelliJ opravit?
<google-map-marker v-for="marker in markers" :position="marker.position" @g-click="onMarkerClick(marker)"/>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.17/vue.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.6.1/lodash.min.js"></script>
<script src="vue-google-maps.js"></script>
</head>
<body>
<google-map style="width: 80%; height: 100%; position: absolute; left:0; top:0"
:center="center"
:zoom="zoom"
@g-rightclick="onMapRightClick"
>
<google-map-marker v-for="marker in markers" :position="marker.position" @g-click="onMarkerClick(marker)"/>
</google-map>
<script>
VueGoogleMap.load({
'key': 'AIzaSyCca3BtctZGXkMlZSk8hNXXw_j_EMYLDBI',
})
Vue.component('google-map', VueGoogleMap.Map);
Vue.component('google-map-marker', VueGoogleMap.Marker);
new Vue({
el: 'body',
data: {
center: {
lat: 1.38,
lng: 103.8
},
zoom: 12,
markers: [
{position: {lat: 1.38, lng: 103.8}},
{position: {lat: 1.37, lng: 103.8}},
{position: {lat: 1.36, lng: 103.8}},
]
},
methods: {
createMarker: function (lat, lng) {
return {position: {lat, lng}}
},
onMapRightClick: function (input) {
let newMarker = this.createMarker(input.latLng.lat(), input.latLng.lng());
this.markers.push(newMarker);
},
onMarkerClick: function (input) {
this.markers.splice(this.markers.indexOf(input), 1)
}
}
});
</script>
</body>