干货,无话

1、react-create-app,创建新react项目;

2、npm install react-amap,引入高德地图的封装;

3、编写组件index.js:

import React from "react";

import ReactDOM from "react-dom";

import Map from "./Map3";

let mapData = {

city: "北京",

mapCenter:[116.418261, 39.921984], //城市定位,经纬度定位只能选择1个

mapZoom: 10, //地图缩放

mapKey: '12345678d98aff1166e51962f108bb24', //你的高德key

status: { //是否支持放大拖拽

zoomEnable: true,

dragEnable: true,

},

mapMaker :[ //marker标记点(list)

{lnglat:[116.401728,39.911984],text:'要显示的内容1'},

{lnglat:[116.436691,39.921984],text:'要显示的内容2'}

],

plugins:['ToolBar']

};

ReactDOM.render(

document.getElementById("root")

);

注意render方法内引用了Map组件,因此要编写一个Map3.js,提供这个组件

4、编写Map3.js组件

import React, { Component } from "react";

import { Map, Marker } from 'react-amap';

import ZoomCtrl from './zoom';

class WebMap3 extends Component {

constructor(props) {

super(props);

this.data = props;

//地图事件

this.amapEvents = {

created: (mapInstance) => {

var marker = new AMap.Marker({

// 经纬度对象,也可以是经纬度构成的一维数组[116.39, 39.9]

position: new AMap.LngLat(116.39, 39.9),

title: '北京!!'

});

mapInstance.add(marker);

}

};

//点位事件

this.markerEvents = {

click: (markerInstance) => {

this.Position = [markerInstance.lnglat.lng,markerInstance.lnglat.lat];

this.setState({

isShow: true,

});

}

};

}

render() {

let {city, mapCenter, mapZoom, mapKey, status, plugins} = this.data.mapData;

return (

{this.data.mapData.mapMaker.map((comment) => (

))}

);

}

}

export default WebMap3;

注意标红部分,会报错

这个是关键! 有两个办法解决,分别见下面的5.1和5.2

5、解决react下找不到原生高德地图AMap类的问题

5.1 方法1

暴力手段,直接搞定。

使用注释    //eslint-disable-next-line  写在每个出现AMap类的前面一行,如下所示

原理是告诉eslint:注释下面这一行您别管。

5.2 方法2

强迫症手段,分为3步。

5.1.1 在项目根目录下新加.eslintrc.js文件,把AMap变量放到globals集合里面

module.exports = {

"env": {

"browser": true,

"es6": true

},

// 脚本在执行期间访问的额外的全局变量

// 当访问未定义的变量时,no-undef 规则将发出警告。

// 如果你想在一个文件里使用全局变量,推荐你定义这些全局变量,这样 ESLint 就不会发出警告了。

// 你可以使用注释或在配置文件中定义全局变量

"globals": {

"Atomics": "readonly",

"SharedArrayBuffer": "readonly",

"AMap":true,

"window":true,

"document":true,

},

"parserOptions": {

"ecmaFeatures": {

"jsx": true

},

"ecmaVersion": 2018,

"sourceType": "module"

},

"plugins": [

"react"

],

"rules": {

"semi": ["error","always"],

}

};

注意红色部分代码表示:AMap是个全局变量,是webpack我罩着的,保证能用,eslint你别管。

当然,webpack.config.js要做点修改,以支持我们刚写的.eslintrc.js文件。可是react-create-app生成的项目的webpack.config.js不好找啊,也能找到:

5.2.2 修改 node_modules\react-scripts\config\webpack.config.js文件

在这个文件搜索字符串 useEslintrc, 大概在webpack.config.js文件的第326行,把 useEslintrc: false,  改成 useEslintrc: true, 然后保存。如下所示:

5.2.3 完工

6 验收

在控制台运行npm start,然后访问http://localhost:3000,出现下图表示OK!

7 总结

此方法适用于在react中调用jquery、百度地图、高德地图、OpenLayer、echart等等使用ES5编写的各类控件库。

React中使用百度地图API

今天我们来搞一搞如何在React中使用百度地图API好吧,最近忙的头皮发麻,感觉身体被掏空,所以很久都没来写博客了,但今天我一定要来一篇好吧 话不多说,我们直接开始好吧 特别注意:该React项目是用 ...

基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中。

react-amap 这是一个基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中. 文档实例预览: Github Web | Gitee Web 特性 ️ 自动加载高德地 ...

Ionic2系列——在Ionic2中使用高德地图

之前讲过了如何在Ionic2中使用第三方库,因为第三方库必须针对TypeScript提供相应的声明文件——即d.ts文件,才能被TypeScript正确识别并编译.好在大多数的第三方库已经有了定义文件 ...

Vue-Cli 3.0 中配置高德地图

vue 中使用高德地图有两种方式 一.vue-amap 组件 官网: https://elemefe.github.io/vue-amap/#/ 开始的时候是打算用这个组件做地图功能的,但是尝试之后存 ...

Vue组件篇——Vue3.0中使用高德地图

VUE-CLI 3.0 中配置高德地图 在项目开发中,地图组件 1.首先,需要注册高德开放平台的账号,并在[应用管理]页面[创建新应用],为应用添加Key值 高德开放平台:https://lbs.am ...

reactjs中使用高德地图计算两个经纬度之间的距离

第一步下载依赖 npm install --save react-amap 第二步,在组件中使用 import React, { Component } from 'react' import { L ...

vue-cli2.X中引入高德地图,将其设为全局对象

平时一般未用脚手架构建或用webpack构建的项目只要用script标签引入即可,在vue-cli 2.X构建的项目中,需要用如下方式引入高德地图: 首先在高德地图开放平台中注册开发者账号并获取key ...

随机推荐

【后缀数组】【poj2774】【 Long Long Message】

题意: 求两个串的最长连续子串. 我的想法: 枚举第二个串...在第一个串的后缀数组中二分查找. 复杂度NlogN.最坏情况N^2 题解: (3)height 数组:定义height[i]=suffi ...

【高并发架构】Redis特点及构件模型

数据结构 redis 相比 memcached 来说,拥有更多的数据结构,能支持更丰富的数据操作.如果需要缓存能够支持更复杂的结构和操作, redis 会是不错的选择. redis 主要有以下几种数据 ...

深入理解Java内存(图解堆栈)

深入理解Java内存(图解)--转载 深入理解Java内存(图解) 这篇文章是转自http://blog.csdn.net/shimiso/article/details/8595564博文,自己对其 ...

LFYZ-OJ ID: 1009 阶乘和

思路 循环n次,每次计算i的阶乘i!,并加入sum中. n的范围从1~100,这里一定要使用高精度运算,涉及到"高精度乘低精度","高精度加高精度". 避免每次 ...

Django之Ajax刷新记住用户名

使用Cookie方法记住用户名 1.创建登录路由 2.定义登录视图函数 判断cookie中是否存在username,存在就将username渲染到login.html模板页面中 3.进行Ajax验证 ...

聊一聊PV和并发、以及计算web服务器的数量的方法

聊一聊PV和并发.以及计算web服务器的数量的方法 http://www.chinaz.com/web/2016/0817/567752.shtml 最近和几个朋友,聊到并发和服务器的压力问题.很多朋 ...

正向工程configuration配置连接

在执行正向工程的时候需要用到这个关键词里面的configure();方法, 这个方法有好几个重构, 都是参数不一样的, 也可以空着不写, 不写的话就会默认去找hibernate.cfg.xml这个文件 ...

【优化】Filddler用于移动端

Fiddler是一个非常强大的Web调试工具,它能捕获所有客户端和服务器的http和https请求,我们可以对请求监视.设置断点,也能修改输入输出数据,这些特性使得Fiddler成为广大web开发者的 ...

OpenGL学习--01--打开一个窗口

// Include standard headers #include #include // Include GLEW #incl ...

Entity Framework for Oracle 基本配置

1.需要安装ODAC 如果不安装ODAC,在数据源连接的配置中,看不到Oracle的选项 我下载安装的组件是32-bit Oracle Data Access Components (ODAC)  w ...

react 逆地理 高德地图_react中使用高德地图的原生API相关推荐

  1. react 逆地理 高德地图_React 高德地图(一)

    由于从 Vue 切换到 React,就一直在学习React. 最近项目需要在React中使用地图 1.快速使用 2.使用高德原生API (1)先看看快速使用 先引入地图组件 npm install - ...

  2. react 逆地理 高德地图_高德官宣!海外地图服务年内上线:首批覆盖亚洲多个国家...

    1月8日消息,在2020CES期间,高德与HERE Technologies(以下简称"HERE地图")共同宣布,双方将基于海外地图及动态信息服务展开合作. HERE地图将为高德地 ...

  3. python调用百度地图api定位_逆地理编码 rgc 反geo检索 | 百度地图API SDK

    使用方法 如不访问境外POI,走以下服务使用流程 编码说明 API请求中需要用到中文或一些特殊字符的参数,如query.region等,为了避免提交到后台乱码,需要对这几个参数值进行编码处理,转换成U ...

  4. java逆地理编码通过经纬度转换为地理位置(通过百度开发API)

    java通过经纬度获取地理位置信息 先看效果图 百度API接口文档地址 (1)首先需要百度开发者账号创建一个应用得到ak (2)java部分实现 @Component @ConfigurationPr ...

  5. react 逆地理 高德地图_在react中使用原生的高德地图

    1.使用react-create-app创建一个新的react项目 2.修改index.html,添加以下script引用: 3.创建一个组件文件MapDemo.js,内容如下 import Reac ...

  6. react 逆地理 高德地图_react高德地图默认卫星图设置

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 react高德地图的话组件可以会有些缺失,所以我们需要参考官网的Geocoder 的引入做参考,目前突然说需要高德地图默认卫星,react-amap,压根 ...

  7. react 逆地理 高德地图_高德地图又出逆天黑科技!全国各大城市模型直接获取...

    本文转自:公众号"设计气象台" 作者:爱敷面膜的台小妹 高德地图可以做区位分析,想必你应该都知道了. (▲ 高德地图"原配"色系) 但是最近发现,高德地图又新出 ...

  8. react大数据量渲染_React 中的状态自动保存(KeepAlive)

    什么是状态保存?假设有下述场景:移动端中,用户访问了一个列表页,上拉浏览列表页的过程中,随着滚动高度逐渐增加,数据也将采用触底分页加载的形式逐步增加,列表页浏览到某个位置,用户看到了感兴趣的项目,点击 ...

  9. react多个网络请求_react中网络请求的优化!

    react中网络请求的优化! 在页面跳转的时候 我会去检查一下 redux中是否存在我需要的值 如果没有 我再去调用接口 如果有的话 那我就不去发网络请求: 如果上个接口挂掉了, 那么我下个接口就不发 ...

最新文章

  1. 团队工具_「管理工具」部门有效管理的5个工具,打造高效团队
  2. 2018年看好这些半导体企业
  3. HDU 4768 Flyer(二分法)
  4. linux ping 端口_教你排除linux中网络故障问题
  5. (译)Windsor入门教程---第三部分 编写第一个Installer
  6. A - Divisors POJ - 2992 (组合数C的因子数)数学—大数
  7. 服务器系统记事本乱码,记事本乱码完美解决修复教程
  8. 用java创建一个类cat_包含属性name在构造方法中进行初始化_JAVA练习题
  9. android timepicker 设置颜色,android – 更改TimePicker文本颜色
  10. 批量替换 Word 文档某几页
  11. C#字节数组与字符串相互转换代码案例
  12. Firefox os
  13. 手把手教你接入快应用账号开发-客户端方式
  14. 麻省理工学院|软件构造|课程翻译
  15. 微信小程序富文本标签 rich-text 图片自适应大小问题
  16. hangfire-简单开始
  17. 最强汉字得到首字母拼音java版
  18. 集采供应链金融系统-完整的实现了境内 外采购业务的运营和管理
  19. HEVC编码框架和main函数代码跟踪解读
  20. SQL数据库的组合查询和统计查询

热门文章

  1. 什么是JIT,JDK17移除了JIT?
  2. 10年后重温《我奋斗了18年才和你坐在一起喝咖啡》
  3. Java 公历转农历,然后农历减一年(或者几天或者任意天),再把这个日期转成公历
  4. 打开Visual Studio Community 2017 报出“许可证已过期”
  5. 推特开发者 推特 oauth1.0a 授权【推特开发者文档系列12】
  6. 荣耀路由2 虚拟服务器,华为荣耀路由器2怎么设置? | 192路由网
  7. Python批量统计数据分布的偏度并画图
  8. 韩:已撤销慰安妇财团法人资格 将启动清算程序
  9. 如何使用TensorFlow Hub和代码示例
  10. linux 下的lsb_release -a 命令查询系统版本