在vue3中如何使用百度地图API(详细步骤+demo示例)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、注册账号、申请成为开发者
  • 二、申请密钥AK
  • 三、在vue3.0中使用百度地图API


提示:以下是本篇文章正文内容,下面案例可供参考

一、注册账号、申请成为开发者

1、打开百度地图开放平台,点击开放文档中的JavaScript API
在vue3中如何使用百度地图API(详细步骤+demo示例)_第1张图片
2、.通过百度账号注册成为百度地图开放平台开发者,选择开发者类型(个人/企业),完成开发者认证即可
在vue3中如何使用百度地图API(详细步骤+demo示例)_第2张图片

二、申请密钥AK

JavaScript API只支持浏览端的AK进行接入与访问,请开发者在申请AK时注意选择正确的AK类型
1.进入百度地图开放平台官网控制台,点击**【应用管理】-【我的应用】
在vue3中如何使用百度地图API(详细步骤+demo示例)_第3张图片2
、点击【创建应用】进入AK申请页面,填写应用名称,务必选择AK类型为“浏览器端”JS API只支持浏览器端AK进行请求与访问
在vue3中如何使用百度地图API(详细步骤+demo示例)_第4张图片
3、为了防止您的AK被盗用,请您务必配置refer白名单,只有该白名单中的网站才能成功发起调用。如下方示例所示,配置了*.mysite.com*为域名白名单,即代表域名中包含.mysite.com的网站=才可以使用该AK访问JS API的服务
在vue3中如何使用百度地图API(详细步骤+demo示例)_第5张图片
完成上边一系列工作就可以开始使用我们得接口文档啦!!

三、在vue3.0中使用百度地图API

注:本人使用的是setup函数,可以借鉴参考,也可以使用语法糖

1、首先在public文件夹下index.html中引入
在vue3中如何使用百度地图API(详细步骤+demo示例)_第6张图片

<script type="text/javascript" src="//api.map.baidu.com/api?v=3.0&ak=你的AK">script>

2、在组件中进行使用

<template>
  <div class="homebox">
    <div class="head">
      <img class="headimg" src="./images/2.png" alt="" />
      <div class="icont">
        <p class="p">{{ nowTime }}p>
        <h1 class="h1">智慧照明综合管理平台h1>
        <button class="btn" @click="goTab">控制台button>
        <button class="btn2">设置button>
      div>
    div>
    <-- 设置放置地图的ref -->
    <div class="mapp" ref="baiduRef">div>
    <div class="content">div>
  div>
template>

<script>
import * as echarts from "echarts";
import { useRouter } from "vue-router";
import axios from "axios";
import { onMounted, onUnmounted, ref, reactive, toRefs } from "vue";
export default {
  setup() {
    // 地图嵌入
    const baiduRef = ref();
    const map = ref();
    const point = ref();
    const marker = ref();

    function initMap(lng = 116.405725, lat = 39.935362) {
      map.value = new BMap.Map(baiduRef.value);//新建一个map地图实例
      point.value = new BMap.Point(lng, lat);//创建点
      //   console.log(point.value, 858585);
      marker.value = new BMap.Marker(point.value);//做标记

      map.value.centerAndZoom(point.value, 15);
      map.value.enableScrollWheelZoom(true); //滚轮缩放
      map.value.addOverlay(marker.value);//在地图上显示标记点
      //   样式id,设置样式的自定义
      map.value.setMapStyleV2({
        styleId: "1fb853a740649182c004c7f05e3f1ac7",
      });

      //   点击标注监听事件
      marker.value.addEventListener("click", function (e) {
        alert("您点击了标注");
        console.log(e,888888888);
      });
    }

    onMounted(() => {
      initMap();
    });

    return {
      baiduRef,
      //   map,
      //   point,
      //   marker
    };
  },
};
script>

<style scoped>
.homebox {
  width: 100%;
  height: 100vh;

  position: relative;
}
.head {
  height: 100px;
  background: #071f4d;
}
.headimg {
  width: 100%;
  height: 100%;
}
.mapp {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 100px;
}
.content {
  height: calc(100vh - 100px);
  display: flex;
}
style>


3、样式展示
在vue3中如何使用百度地图API(详细步骤+demo示例)_第7张图片


你可能感兴趣的:(Vue,百度,javascript,前端)