React中引入百度地图API 避坑

2023-11-07

‘BMap’ is not defined

在这里插入图片描述

原因: React脚手架中全局变量都要用window去访问
解决: BMap改成window.BMap访问, 或者将BMap从window中解构出来


BMap前加了window, 页面还是一片空白

在这里插入图片描述

原因: 没有给地图容器元素设置宽高
解决: 给地图容器元素设置宽高


正确的写法

  1. 在public / index.html 中引入百度地图API文件
 <script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=你的密钥"></script>
  1. 在组件中创建地图容器元素、初始化实例
import React from "react"
import './index.scss'
export default class Map extends React.Component
{
    componentDidMount()
    {
        // React脚手架中全局变量都要用window去访问
        //const BMap = window.BMap 这样写也可以
        const {BMap} = window
        // 初始化地图实例
        const map = new BMap.Map("container")
        // 设置中心点
        const point = new BMap.Point(116.404, 39.915);
        // 地图初始化,同时设置地图展示级别
        map.centerAndZoom(point, 15);
    }
    render()
    {
        return (
            <div className="map">
                {/* 地图容器元素 */}
                <div id="container" style={{width:'800px',height:'800px'}}/>
        </div>
        )
    }
}

在这里插入图片描述

容易踩坑的地方:

  1. BMap访问前要加window
  2. 定义地图容器元素时用id ,不是类名
  3. 没有给地图容器元素设置宽高

很幸运, 这三个地方我都踩到了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React中引入百度地图API 避坑 的相关文章

随机推荐

  • csdn获取自己所有博客的地址,包含分页

    获取自己的所有博客地址 一 步骤 1 先获取首页看到的部分 2 正则截取每月发表的博客数 总和即是所有的博客数 3 分页请求获取每一页的博客 4 正则截取获得每篇博客的地址 二 代码 import re import math import
  • 感应(异步)电机无速度传感器技术—TI例程解析

    电机控制系列文章 感应 异步 电机磁场定向控制MATLAB Simulink建模 感应 异步 电机磁场定向控制电流环PI控制参数设计 感应 异步 电机磁场定向控制速度环PI控制参数设计 感应 异步 电机无速度传感器技术 电压模型法 目录 电
  • Python实现简单猜数字游戏,输入不是整数时,给出提示

    猜数字游戏 要求 1 使用random 函数产生一个预设整数 让用户通过键盘输入所猜的数 如果小于预设的数 显示 遗憾 太小了 如果大于预设的数 显示 遗憾 太大了 如此循环 至猜中 提示 恭喜 预测N次 你猜中了 2 当用户输入的不是整数
  • thinkPHP_V5漏洞

    php rce攻防世界 百度thinkphpv5 查询到其存在过漏洞 在网页中随便注入 可观察到其版本为V5 0 20 再上旬该版本漏洞 描述为 只要在url后添加 s index think app invokefunction func
  • 全栈之前端

    欢迎关注 全栈工程师修炼指南 公众号 点击 下方卡片 即可关注我哟 设为 星标 每天带你 基础入门 到 进阶实践 再到 放弃学习 花开堪折直须折 莫待无花空折枝 作者主页 https www weiyigeek top 博客 https b
  • (董付国)Python 学习笔记---Python序列(4)

    字典应用案例 已有大量用户对若干电影的打分数据 现有某用户 也看过一些电影并进行过评分 要求根据已有打分数据为该用户进行推荐 1 代码采用基于用户的过滤协同算法 也就是根据用户喜好来确定与当前用户最相似的用户 然后再根据最相似用户的喜好为当
  • 数据分析02——numpy模块的在jupyter中的使用

    0 numpy 在计算机中会把数学当中的矩阵叫做数组 在很多应用中的表格也就是通过矩阵表示的 所以numpy广泛用于机器学习 数据分析 和图像处理领域 1 numpy常用方法和函数 前言 在使用numpy创建数组之前必须先导入模块 impo
  • php升级

    1 要使用lumen的单元测试 https lumen laravel com docs 5 2 testing 使用单元测试 cd 项目目录 phpunit tests 里面需要使用phpunit https phpunit de man
  • freeRTOS---空闲任务与阻塞延时(1)

    在上传这篇文章的时候 同时也上传了代码 欢迎下载 RTOS中的延时是在需要延时的时间内任务放弃CPU的使用权 超过延时时间后重新获得CPU的使用权 叫做 阻塞延时 空闲任务是在启动调度器后创建的 是CPU空闲时候运行的 是优先级最低的 空闲
  • Linux实时调度策略(SCHED_RR)和CFS(SCHED_OTHER)之间的区别

    本文试图从直观角度 说明SCHED RR调度策略和SCHED OTHER调度策略之间的区别 在Linux上 SCHED OTHER和SCHED NORMAL的意思相同 它们都是指的CFS调度策略 只不过 在内核中 CFS定义为SCHED N
  • java中的next()方法,nextline()方法,hasnext()方法的用法系列(1)。

    这是王秀秀的第23篇博客 看下方目录 next 方法 nextline 方法 hasnext 方法 最近本菜鸡做题呀 遇到了一些很好玩的事情 那就是scanner类中的一些方法 经过了解后 真挺好玩的 next 方法 话不多说上代码 imp
  • Java中的strip(), split() 分割字符串

    jdk11引进了strip 用来去除字符串的前导和后缀空格 eg str hello world str str strip str hello world split 加上正则化用来分割字符串 1 正则表达式 s 表示匹配任何空白字符 表
  • javaSE从入门到精通的二十万字总结(二)

    目录 前言 5 集合 5 1 集合两大类 5 2 Collection 5 2 1 常用方法 5 2 2 迭代器 5 2 3 contains方法 5 2 4 remove方法 5 3 List 5 3 1 ArrayList 5 3 2
  • nnpack详解

    NNPACK详解 一 NNPACK简介 NNPACK由facebook开发 是一个加速神经网络计算的加速包 NNPACK可以在多核CPU平台上提高卷积层计算性能 NNPACK采用的快速卷积算法是基于Fourier transform 和 W
  • win10+vs2015+cuda10.0+cudnn7.6+anaconda3(python3.7)+tensorflow_gpu1.13.1+pycharm(我的电脑配置:i79700k+1070

    win10 vs2015 cuda10 0 cudnn7 6 anaconda3 python3 7 tensorflow gpu1 13 1 pycharm 我的电脑配置 i79700k 1070Ti 提醒 安装之前先查看自己显卡对应的版
  • FTP暴力破解登陆漏洞复现(Windows Server 2003)

    FTP暴力破解漏洞复现 0x01 漏洞简述 FTP弱口令 一般指使用FTP的用户的密码长度太短 复杂度不够 仅包含数字 或仅包含字母等 容易被黑客攻击 发生恶意文件上传或更严重的入侵行为 知道FTP弱口令 可以通过该漏洞获取主机文件系统信息
  • 规则引擎相关开源项目总结

    表达式引擎 Java Groovy https groovy lang org JEXL https commons apache org proper commons jexl mvel https github com mvel mve
  • 【华为OD机试】停车场车辆统计【2023 B卷

    华为OD机试 真题 点这里 华为OD机试 真题考点分类 点这里 题目描述 特定大小的停车场 数组cars 表示 其中1表示有车 0表示没车 车辆大小不一 小车占一个车位 长度1 货车占两个车位 长度2 卡车占三个车位 长度3 统计停车场最少
  • Windows下安装CUDA并配置cuDNN教程

    Windows下安装CUDA并配置cuDNN教程 一 查看电脑的显卡驱动版本 1 键盘点击Windows R或者在搜索栏输入cmd 进入命令提示符 2 在命令提示符下 输入nvidia smi 查看显卡驱动版本 本电脑显卡驱动版本为 456
  • React中引入百度地图API 避坑

    BMap is not defined 原因 React脚手架中全局变量都要用window去访问 解决 BMap改成window BMap访问 或者将BMap从window中解构出来 BMap前加了window 页面还是一片空白 原因 没有