vue2.0调用谷歌地图vue-google-maps(不采坑系列)

1. 申请谷歌地图api的key

注:首先网络是能翻墙 不然啥也看不见

2. 在vue项目中安装vue-google-maps

注:此时的–save是把vue-google-maps写入package.json)

npm install --save vue2-google-maps@0.10.7

安装完成之后,查看package.json是否有vue-google-maps​​

"vue2-google-maps": "^0.10.7",

3. 在main.js文件中引入

import * as VueGoogleMaps from 'vue2-google-maps'
Vue.config.productionTip = false
Vue.use(VueGoogleMaps, {
  load: {
    key: '', // 此处填入谷歌地图申请的key
    libraries: 'places'
  }
})

4.新建谷歌地图弹框GoogleMap.vue

<template>
  <el-dialog :visible.sync="dialog" append-to-body title="Dialog Demo">
    <div>
      <br>
      <GmapMap
        :center="center"
        :zoom="12"
        style="width:100%;  height: 400px;"
      />
    </div>
  </el-dialog>
</template>

<script>
// 这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等)
// 例如:import 《组件名称》 from '《组件路径》';
// dialog 打开方式; this.refs.xxx.dialog = true

export default {
// import引入的组件需要注入到对象中才能使用
  name: 'GoogleMap',
  components: {},
  data() {
    // 这里存放数据
    return {
      dialog: false,
      formLabelWidth: '120px',
      center: { lat: 45.508, lng: -73.587 }
    }
  },
  // 监听属性 类似于data概念
  computed: {},
  // 生命周期 - 创建完成(可以访问当前this实例)
  created() {

  },
  mounted() {
    this.geolocate()
  },
  // 监控data中的数据变化
  // 方法集合
  methods: {
    geolocate: function() {
      navigator.geolocation.getCurrentPosition(position => {
        this.center = {
          lat: position.coords.latitude,
          lng: position.coords.longitude
          // lat: 45.508,
          // lng: -73.587
        }
      })
    }
  }
}
</script>
<style lang='scss' scoped>
//@import url(); 引入公共css类

</style>

5.在父组件中引入GoogleMap.vue

    <google-map ref="google-map"/>
import GoogleMap from './GoogleMap.vue'
components: {GoogleMap}

更多用法参考官方文档

https://developers.google.com/maps/documentation/javascript/tutorial?hl=zh-cn

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Vue.js是一种流行的JavaScript框架,用构建用户界面。它提供了一种响应式的数据绑定和组件化的开发方式,使得构建复杂的Web应用变得更加简单和高效。 关于Vue.js谷歌地图的结合,可以通过以下步骤来使用谷歌地图: 1. 首先,你需要在你的Vue项目中引入谷歌地图JavaScript API。你可以在index.html文件中添加以下代码: ```html <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script> ``` 请注意将YOUR_API_KEY替换为你自己的谷歌地图API密钥。 2. 在你的Vue组件中,你可以使用Vue的生命周期钩子函数来初始化和加载谷歌地图。在created或mounted钩子函数中,你可以创建一个新的地图实例,并将其绑定到你的HTML元素上。以下是一个简单的示例: ```javascript <template> <div id="map"></div> </template> <script> export default { mounted() { this.initMap(); }, methods: { initMap() { const map = new google.maps.Map(document.getElementById("map"), { center: { lat: 37.7749, lng: -122.4194 }, zoom: 8, }); }, }, }; </script> ``` 在上面的示例中,我们在mounted钩子函数中调用了initMap方法来初始化地图。我们创建了一个新的地图实例,并将其绑定到id为"map"的HTML元素上。 3. 你还可以根据需要添加其他功能,例如标记、信息窗口、路线等。你可以在Vue组件的methods中定义相应的方法来实现这些功能。 这只是一个简单的示例,你可以根据自己的需求进行更复杂的地图操作。你可以参考谷歌地图的官方文档来了解更多关于谷歌地图API的用法和功能。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值