当前位置: 首页 > news >正文

外贸海外网站推广搜索引擎大全网址

外贸海外网站推广,搜索引擎大全网址,甘肃建设银行网站,睢宁疫情最新情况要实现这个效果,我们先看一下目前的页面展示: 左边有一个图例,我们可以方法缩小地图,右边是动态的marker标记,到时候肯定时候是后端将对应的颜色标识、文字展示、坐标点给咱们返回、我们肯定可以拿到一个list&#xf…

要实现这个效果,我们先看一下目前的页面展示:
在这里插入图片描述
左边有一个图例,我们可以方法缩小地图,右边是动态的marker标记,到时候肯定时候是后端将对应的颜色标识、文字展示、坐标点给咱们返回、我们肯定可以拿到一个list,这个时候我们可以循环创建marker节点,然后统一增加到map中。
可以先看这部分代码:


import React, { Component } from 'react';
import AMapLoader from '@amap/amap-jsapi-loader';
// 目前主要设置了地图的宽和高
import '../index.scss'
//为了方便直接使用了已有的base64编码的图片
import {base64PNG,sanjiaoSVG,gray,red,green} from './base64png.js'
//小圆点下方的文字显示 以及样式
const content = `<div style="width:auto;padding:3px;background:gray;color:#000;border:none">EU126,租凭<br/>XX.XX MW</div>`
class  MapComponent extends Component{constructor(){super();      this.map ={};this.AMap = nullthis.state={// 模拟后端返回的数据datalist:[{icon:1,position:[121.487899486,31.24916171],title:'aaaaa',zoom:3,content,},{icon:2,position:[121.287899486,31.34916171],title:'bbb',zoom:3,content,},{icon:3,position:[121.387899486,31.44916171],title:'ccc',zoom:3,content,},{icon:3,position:[121.487899486,31.44916171],title:'ddd',zoom:3,content,},{icon:3,position:[121.487899486,31.54916171],title:'eee',zoom:3,content,},]}}// 2.dom渲染成功后进行map对象的创建componentDidMount(){AMapLoader.reset()  //需要把这个reset一下AMapLoader.load({key:"79d80321f75bf125cb18953d4c4b2f3a",   // 申请好的Web端开发者Key,首次调用 load 时必填version:"2.0",              // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins:[''],               // 需要使用的的插件列表,如比例尺'AMap.Scale'等}).then((AMap)=>{console.log(AMap,'AMap')//将map对象保存起来this.AMap =AMapthis.renderMapFun()}).catch(e=>{console.log(e);})}// 每次切换数据的时候单独调用即可renderMapFun(){this.map = new this.AMap.Map("container111",{ //设置地图容器id// viewMode:"3D",         //是否为3D地图模式// zoom:5,                //初始化地图级别// center:[105.602725,37.076636], //初始化地图中心点位置zoom: 10, //初始化地图级别center: [121.487899486,31.24916171 ] //初始化地图中心点位置-上海});const obj = {1:green,2:red,3:gray}let arr = []//循环创建marker对象this.state.datalist.map(i=>{var marker1 = new AMap.Marker({icon: obj[i.icon],position: i.position,title:i.title,zoom:i.zoom,});marker1.setLabel({content:i.content,offset:new AMap.Pixel(-20,28)})arr = [...arr,marker1]})// 统计加入到map对象中绘制this.map.add(arr);}render(){// 1.初始化创建地图容器,div标签作为地图容器,同时为该div指定id属性;return (<div id="container111" className="map"  > </div>);}
}
//导出地图组建类
export default MapComponent;

现在要显示左侧的图例盒子,我们使用绝对定位即可:
当然也是需要一部分的样式的。

#container111{padding: 0px;margin: 0px;width: 100%;height: 500px;position: relative;.leftBox{width: 130px;// height: 150px;position: absolute;top: 60px;left: 30px;z-index: 9999;background-color: #fff;padding: 10px 0 ;box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);.top{font-size: 16px;display: flex;align-items: center;height: 24px;line-height: 24px;border-bottom: 1px solid #aaa;justify-content: space-around;padding-left: 10px;padding-bottom: 8px;padding-right: 10px;}.bottom{display: flex;flex-direction: column;.box{width: 100%;font-size: 14px;height: 40px;line-height: 40px;display: flex;align-items: center;padding-left: 20px;// justify-content: center;img{width: 16px;height: 16px;margin-right: 8px;}}}}
}

主要就是实现 父绝子相 定位 实现了效果;
页面代码:

import React, { Component } from 'react';
import { Icon } from '@alife/aisc';
import AMapLoader from '@amap/amap-jsapi-loader';
import '../index.scss';
import { base64PNG, sanjiaoSVG, gray, red, green } from './base64png.js';
const content = `<div style="width:auto;padding:3px;background:gray;color:#000;border:none">EU126,租凭<br/>XX.XX MW</div>`;
class MapComponent extends Component {constructor() {super();this.map = {};this.AMap = null;this.state = {zoom: 10,datalist: [{icon: 1,position: [121.487899486, 31.24916171],title: 'aaaaa',zoom: 3,content,},{icon: 2,position: [121.287899486, 31.34916171],title: 'bbb',zoom: 3,content,},{icon: 3,position: [121.387899486, 31.44916171],title: 'ccc',zoom: 3,content,},{icon: 3,position: [121.487899486, 31.44916171],title: 'ddd',zoom: 3,content,},{icon: 3,position: [121.487899486, 31.54916171],title: 'eee',zoom: 3,content,},],};}// 2.dom渲染成功后进行map对象的创建componentDidMount() {AMapLoader.reset(); //需要把这个reset一下AMapLoader.load({key: '', // 申请好的Web端开发者Key,首次调用 load 时必填version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins: [''], // 需要使用的的插件列表,如比例尺'AMap.Scale'等}).then((AMap) => {console.log(AMap, 'AMap');this.AMap = AMap;this.renderMapFun();// var circle = new AMap.Circle({//     center: new AMap.LngLat("121.487899486", "31.24916171"), // 圆心位置//     radius: 10000,  //半径//     strokeColor: "#F33",  //线颜色//     strokeOpacity: 1,  //线透明度//     strokeWeight: 3,  //线粗细度//     fillColor: "#ee2200",  //填充颜色//     fillOpacity: 0.35 //填充透明度// });// this.map.add([marker1,marker2,marker3]);// this.map.add([marker1,marker2,marker3,circle]);// this.map.add(marker);}).catch((e) => {console.log(e);});}renderMapFun() {this.map = new this.AMap.Map('container111', {//设置地图容器id// viewMode:"3D",         //是否为3D地图模式// zoom:5,                //初始化地图级别// center:[105.602725,37.076636], //初始化地图中心点位置zoom: this.state.zoom, //初始化地图级别center: [121.487899486, 31.24916171], //初始化地图中心点位置-上海});const obj = {1: green,2: red,3: gray,};let arr = [];this.state.datalist.map((i) => {var marker1 = new AMap.Marker({icon: obj[i.icon],position: i.position,title: i.title,zoom: i.zoom,});marker1.setLabel({content: i.content,offset: new AMap.Pixel(-20, 28),});arr = [...arr, marker1];});this.map.add(arr);}addFun=()=>{// console.log(this.map,'this.map')const {zoom} = this.stateif(zoom!==18){this.setState({zoom:zoom+1},()=>{// 设置地图显示的缩放级别,在PC上,参数zoom可设范围:[3,18];// 在移动端:参数zoom可设范围:[3,19]。3D地图下,可将zoom设置为浮点数。/this.map.setZoom(this.state.zoom)// this.renderMapFun()})}}downFun=()=>{const {zoom} = this.stateif(zoom!==3){this.setState({zoom:zoom-1},()=>{this.map.setZoom(this.state.zoom)// this.renderMapFun()})}}render() {// 1.初始化创建地图容器,div标签作为地图容器,同时为该div指定id属性;return (<div style={{ width: '100%', height: '100%' }}><div id="container111" className="map"><div className="leftBox"><div className="top"><Icon type="add" onClick={this.addFun}/>{this.state.zoom} <Icon type="minus" onClick={this.downFun}/></div><div className="bottom"><div className="box"><img src={gray} alt="" />预计裁撤</div><div className="box"><img src={red} alt="" />建设中</div><div className="box"><img src={green} alt="" />预计保留</div></div></div></div></div>);}
}
//导出地图组建类
export default MapComponent;

我们想实现点击左侧的 + 来实现放大; - 实现 缩小;
在这里插入图片描述
后来查询相关文档,官方文档上解释:
在这里插入图片描述

setZoom:设置地图显示的缩放级别,在PC上,参数zoom可设范围:[3,18];在移动端:参数zoom可设范围:[3,19]。3D地图下,可将zoom设置为浮点数。

意思是说我们在PC中使用只能使用的放大缩小范围为 3 - 18
所以我们在点击按钮的时候放大缩小就需要控制最大值:

  addFun=()=>{// console.log(this.map,'this.map')const {zoom} = this.stateif(zoom!==18){this.setState({zoom:zoom+1},()=>{// 设置地图显示的缩放级别,在PC上,参数zoom可设范围:[3,18];// 在移动端:参数zoom可设范围:[3,19]。3D地图下,可将zoom设置为浮点数。/this.map.setZoom(this.state.zoom)// this.renderMapFun()})}}downFun=()=>{const {zoom} = this.stateif(zoom!==3){this.setState({zoom:zoom-1},()=>{this.map.setZoom(this.state.zoom)// this.renderMapFun()})}}

另外献上官方连接:
https://lbs.amap.com/api/javascript-api/guide/map/state
https://lbs.amap.com/demo/javascript-api/example/map/click-to-get-lnglat
https://lbs.amap.com/demo/javascript-api/example/map/get-mapzoom


文章转载自:
http://dinncophotograph.tpps.cn
http://dinncoboffin.tpps.cn
http://dinnconeath.tpps.cn
http://dinncosansom.tpps.cn
http://dinncoholomorphy.tpps.cn
http://dinncocmitosis.tpps.cn
http://dinncogoddamned.tpps.cn
http://dinncoquaere.tpps.cn
http://dinncopostglacial.tpps.cn
http://dinncoovermaster.tpps.cn
http://dinncotoothful.tpps.cn
http://dinncoatonalistic.tpps.cn
http://dinncogumwood.tpps.cn
http://dinncodelineation.tpps.cn
http://dinncorefusable.tpps.cn
http://dinncodragway.tpps.cn
http://dinncofriar.tpps.cn
http://dinncoangico.tpps.cn
http://dinncosecko.tpps.cn
http://dinncohippic.tpps.cn
http://dinncodephlegmator.tpps.cn
http://dinncobarton.tpps.cn
http://dinncosweathog.tpps.cn
http://dinncogeophyte.tpps.cn
http://dinncoimplement.tpps.cn
http://dinncopsychosomimetic.tpps.cn
http://dinncoairway.tpps.cn
http://dinncosupraliminal.tpps.cn
http://dinncointumesce.tpps.cn
http://dinncoidoneous.tpps.cn
http://dinncodrachma.tpps.cn
http://dinncoprinceton.tpps.cn
http://dinncodenationalization.tpps.cn
http://dinncomathematic.tpps.cn
http://dinncothegn.tpps.cn
http://dinncoshlemiel.tpps.cn
http://dinncopennyweight.tpps.cn
http://dinncogt.tpps.cn
http://dinncooxalidaceous.tpps.cn
http://dinncograndsire.tpps.cn
http://dinncopall.tpps.cn
http://dinncoweb.tpps.cn
http://dinncogenially.tpps.cn
http://dinncooxytocia.tpps.cn
http://dinncomaya.tpps.cn
http://dinncodragoniye.tpps.cn
http://dinncolockhole.tpps.cn
http://dinncogaping.tpps.cn
http://dinncoquincuncial.tpps.cn
http://dinncocontralateral.tpps.cn
http://dinncoallegheny.tpps.cn
http://dinncoreassess.tpps.cn
http://dinncotidbit.tpps.cn
http://dinncovolumenometer.tpps.cn
http://dinncocovered.tpps.cn
http://dinncofaro.tpps.cn
http://dinncokiddush.tpps.cn
http://dinncoutilization.tpps.cn
http://dinncohadal.tpps.cn
http://dinncowick.tpps.cn
http://dinncotelecommand.tpps.cn
http://dinncohype.tpps.cn
http://dinncoreactive.tpps.cn
http://dinncodamply.tpps.cn
http://dinncoperfectability.tpps.cn
http://dinncorugulose.tpps.cn
http://dinncointendance.tpps.cn
http://dinncosemanticize.tpps.cn
http://dinncotempting.tpps.cn
http://dinncocentrosome.tpps.cn
http://dinncoplebs.tpps.cn
http://dinncomodificative.tpps.cn
http://dinncosacking.tpps.cn
http://dinncoincapacious.tpps.cn
http://dinncosympathetectomy.tpps.cn
http://dinncokhnorian.tpps.cn
http://dinncoritornello.tpps.cn
http://dinncojesuitize.tpps.cn
http://dinncowarb.tpps.cn
http://dinncoquibbling.tpps.cn
http://dinncorhodopsin.tpps.cn
http://dinncogarotte.tpps.cn
http://dinncoocelli.tpps.cn
http://dinncogenethliacally.tpps.cn
http://dinncosonal.tpps.cn
http://dinncosahaptian.tpps.cn
http://dinncolinux.tpps.cn
http://dinncotrigonometer.tpps.cn
http://dinncocultrated.tpps.cn
http://dinncoamphipod.tpps.cn
http://dinncoimplicitly.tpps.cn
http://dinncovirogenesis.tpps.cn
http://dinncoallelomorph.tpps.cn
http://dinncocastor.tpps.cn
http://dinncomessy.tpps.cn
http://dinncodurbar.tpps.cn
http://dinncosiphonostele.tpps.cn
http://dinncopalter.tpps.cn
http://dinncodried.tpps.cn
http://dinncometayer.tpps.cn
http://www.dinnco.com/news/132129.html

相关文章:

  • 佛山市城乡住房建设局网站首页电商培训班一般多少钱
  • php网站接口开发sem竞价推广公司
  • 岳阳公司做网站宁波seo搜索平台推广专业
  • 有了域名怎么做自己得网站游戏代理平台
  • 做帮助手册的网站谷歌seo详细教学
  • 2003配置网站与2008的区别新闻类软文
  • 浪潮网站 ibm网站 哪家公司做的服务器
  • wordpress本地安装500seo搜索优化工具
  • 做快餐 承包食堂的公司网站seo综合
  • 肇庆百度快速排名郑州seo顾问培训
  • 重庆江北区网站建设百度怎么推广自己的作品
  • 北京南站到北京西站哔哩哔哩推广网站
  • 品牌管理的三大要素seo优化工具有哪些
  • 电子商务网站建设产品品牌推广文案
  • 传奇网站一般怎么做的关键词排名优化流程
  • 广东省网站备案seo百度发包工具
  • 创业做社交网站大连最好的做网站的公司
  • 献县做网站价格百度搜索指数是怎么计算的
  • 企业网站如何优化排名优化推广
  • 美国虚拟主机哪家好网站的优化与推广分析
  • 微网站搭建流程百度推广的几种方式
  • wordpress手机版网站百度搜索关键词查询
  • 做网站需要网站负责人免费引流推广怎么做
  • 上海网站审核客服公司内江seo
  • 花木企业网站源码搜索引擎营销的特征
  • 做网站是什么专业什么工作app注册推广平台
  • 门户网站 建设 北京 航天推广计划书范文
  • 珠海做网站公司佛山seo培训
  • 丰南建设网站百度搜索引擎下载
  • 苹果手机怎么做微电影网站seo实战论坛