Skip to content

daiwanxing/bmap-jsapi-loader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

51cba0c · Mar 1, 2023

History

46 Commits
Jan 30, 2023
Jan 29, 2023
Jan 29, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Jan 29, 2023
Jan 31, 2023
Jan 24, 2023
Jan 30, 2023
Jan 29, 2023
Jan 29, 2023
Feb 20, 2023
Jan 24, 2023
Mar 1, 2023
Jan 26, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Feb 20, 2023
Jan 31, 2023

Repository files navigation

🗺️ bmap-jsapi-loader

bmap-jsapi-loader 是一个小巧的易于加载百度地图以及地图开源工具库的插件, bmap-jsapi-loader 的灵感来源于 @googlemaps/js-api-loader

特点

  • 🎨 支持以 UMD 和 ESM 两种模块方式使用
  • 🪄 为 TypeScript 用户提供完善的类型支持
  • ⚡ 异步加载百度地图脚本
  • 💌 可加载 bmap 3.0 或者 bmap-gl 两个版本
  • 💡 支持加载百度地图开源库
  • 📦 提供完善的单元测试

安装

以包管理工具的方式安装

使用 NPM:

$ npm install bmap-jsapi-loader --save

使用 Yarn:

$ yarn add bmap-jsapi-loader --save

使用 PNPM:

$ pnpm install bmap-jsapi-loader --save

以 CDN 的方式使用

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/index.umd.js"></script>

快速开始

示例

import { loader } from "bmap-jsapi-loader";

// 安装 Javascrtip-API 3.0 版本的百度地图
loader({
    v: "3.0",
    ak: "填写你的ak密钥",
}).then(() => {
    // 在 then 函数中 BMap 对象已经挂载到了 window 对象上,所以我们可以安全的访问 BMap 对象的属性和方法
    const map = new BMap.Map("map");
    map.centerAndZoom(new BMap.Point(116.404, 39.915), 11);
    map.addControl(
        new BMap.MapTypeControl({
            mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP],
        })
    );
    map.enableScrollWheelZoom(true);
}).catch(error => {
    alert(error);
})

// 安装 Javascrtip-API GL 版本的百度地图
loader({
    v: "1.0",
    type: "webgl"
    ak: "填写你的ak密钥",
}).then(() => {
    const map = new BMapGL.Map("map");
    map.centerAndZoom(new BMapGL.Point(116.404, 39.915), 11);
    map.addControl(
        new BMapGL.MapTypeControl({
            mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP],
        })
    );
    map.enableScrollWheelZoom(true);
});

使用地图工具库

百度地图 GL 版本的开源库不需要指定版本,但是安装适用于 bmap 3.0 的开源库需要设置库的版本.

点击链接查看 bmap 3.0 的开源库列表

点击链接查看 bmap GL 版本的开源库列表

BMapLoader({
    v: "3.0",
    ak: "填写你的ak密钥",
    // 加载百度地图的工具库
    library: [
        {
            lib: "DrawingManager",
            version: "1.5",
        },
        {
            lib: "MarkerClusterer",
            version: "1.2",
            // bmap-loader 默认请求开源库的压缩后的脚本文件,如果需要请求未压缩的源文件,设置 `disableZip: true` 即可。
            disableZip: true,
        },
    ],
});

🐛 提交 issue

提交 issue 前,请尽可能的能提供一个可复现的 demo 链接放在 issue 中。

结尾

如果你觉得这个插件还不错,请给我一个 ⭐ 支持下我。

License

MIT © 2023-PRESENT Wonder Dai