海洋做网站个人网站可以做淘宝客

pingmian/2025/10/11 4:49:35/文章来源:
海洋做网站,个人网站可以做淘宝客,网络推广就是做网站吗,软件开发模型有几种首先#xff0c;需要在你的index.html模板页面头部加载百度地图JavaScript API代码#xff0c;密钥可去百度地图开放平台官网申请 script typetext/javascript src//api.map.baidu.com/api?typewebglv1.0ak您的密钥/script需要在你的index.html模板页面头部加载百度地图JavaScript API代码密钥可去百度地图开放平台官网申请 script typetext/javascript src//api.map.baidu.com/api?typewebglv1.0ak您的密钥/script 然后使用npm方式安装react组件库然后通过es模块加载 npm install react-bmapgl --save 在需要显示地图的页面中编写 import React, { useEffect } from react; import { useLocation } from react-router-dom; import { Map, Marker, Circle } from react-bmapgl;export default function ShopMapPage() {const location useLocation();const record location.state || {}; // 接收上个页面传递过来的地区数据以便定位的显示useEffect(() {// 加载百度地图脚本const loadMapScript () {return new Promisevoid((resolve, reject) {const script document.createElement(script);script.src http://api.map.baidu.com/api?v1.0typewebglak您的密钥;script.onload resolve;script.onerror reject;document.body.appendChild(script);});};const geocode (address: string) {return new PromiseBMapGL.Point((resolve, reject) {const geocoder new BMapGL.Geocoder();// 将地区转换为经纬度geocoder.getPoint(address, function (point) {if (point) {resolve(point);} else {reject(无法获取该地区的坐标);}});});};// 计算当前两个标记点之间的距离const getDistance (point1: BMapGL.Point, point2: BMapGL.Point) {const { lng: lng1, lat: lat1 } point1;const { lng: lng2, lat: lat2 } point2;// 在经纬度坐标系统中经度和纬度通常以度°为单位表示。但是在计算距离或执行其他数学计算时可能需要将角度转换为弧度radian来进行更准确的计算const radLng1 lng1 * (Math.PI / 180); // lng1 是经度的值乘以 (Math.PI / 180) 可以将其从度转换为弧度const radLat1 lat1 * (Math.PI / 180);const radLng2 lng2 * (Math.PI / 180);const radLat2 lat2 * (Math.PI / 180);const a Math.sin(radLat1) * Math.sin(radLat2); //调用 Math.sin() 方法计算出它们的正弦值然后将两个正弦值相乘即可得到参数 a 的值const b Math.cos(radLat1) * Math.cos(radLat2) * Math.cos(radLng2 - radLng1);const distance 6378137 * Math.acos(a b); //调用 Math.acos() 方法可以计算出两个点之间的弧度差并将其乘以地球半径就可以得到两个点之间的球面距离。return distance;};loadMapScript().then(() {const map new BMapGL.Map(mapContainer);// 地图放大缩写实现map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放const scaleCtrl new BMapGL.ScaleControl(); // 添加比例尺控件map.addControl(scaleCtrl);const zoomCtrl new BMapGL.ZoomControl(); // 添加缩放控件按钮map.addControl(zoomCtrl);// const addresses [北京市海淀区, 北京市丰台区, 广州市天河区]; // 待转换的地区名称列表const addresses [];if (record.length) {record.map((item: { city: string }) {const result item.city.replace(/\s/g, ); // 使用正则表达式替换空格addresses.push(result);});} else {const result record.city.replace(/\s/g, ); // 使用正则表达式替换空格addresses.push(result);}Promise.all(addresses.map((address) geocode(address))).then((points) {points.forEach((point) {const marker new BMapGL.Marker(point);map.addOverlay(marker);});// 如果地区有多条时就出现遮罩层并且会根据多条定位调整位置并且缩放if (addresses.length 1) {// 创建圆形遮罩层// 1. 使用 reduce() 方法将所有地理坐标点的经度 (lng) 和纬度 (lat) 分别累加。最终得到的 center 对象包含了所有点的经度和纬度之和。const center points.reduce((acc, point) {return {lng: acc.lng point.lng,lat: acc.lat point.lat};},{ lng: 0, lat: 0 });// 2. 通过将经度和纬度分别除以标记点的数量 points.length可以得到平均值即标记点的中心坐标。center.lng / points.length;center.lat / points.length;// 3. 通过比较距离大小找到最大的距离将其存储在 maxDistance 变量中let maxDistance 0;for (let i 0; i points.length; i) {for (let j i 1; j points.length; j) {const distance getDistance(points[i], points[j]); // getDistance()方法计算当前两个标记点之间的距离// 如果这个距离比目前的最大距离 maxDistance 要大就将它赋值给 maxDistanceif (distance maxDistance) {maxDistance distance; //在所有的标记点对中最终得到的 maxDistance 就是所有标记点之间的最大距离。}}}// 创建 BMapGL.Circle 对象时需要传入三个参数圆心坐标、半径和样式选项const circle new BMapGL.Circle(center, maxDistance, {fillColor: #454399, // 填充颜色// strokeColor: #000, // 边框颜色strokeWeight: 1, // 边框宽度strokeOpacity: 0.8, // 边框透明度fillOpacity: 0.3 // 填充透明度});map.addOverlay(circle);const viewport map.getViewport(points); //将地图的视野调整为适合包含所有标记点的最佳范围map.setViewport(viewport);} else {// 如果地区只有一条的时候就将此定位设为中心并且设置缩放大小map.centerAndZoom(points[0], 11); //centerAndZoom() 是百度地图 API 中的一个方法用于将地图中心点设置为指定的坐标并设置地图的缩放级别。}}).catch((error) {console.error(error);});});}, []);return (div idmapContainer style{{ height: 45vw, width: 100% }}/div); }根据搜索的地区显示相对应的地图展示 根据单条信息点击时对应显示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88734.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站开发需要工具龙岗网站建设-信科网络

简介: 阿里云与合作伙伴Commvault联合发布勒索病毒防治解决方案,从公共云、混合云等场景入手,提供完善的解决方案 在众多的数据安全工作中,勒索病毒的防治是近几年备受关注的领域。从互联网诞生伊始,勒索病毒就相生相…

怎样做返利网站wordpress 突然502

可能大家会遇到需要将一台电脑里的数据拷贝到另外一台电脑,最常用的方法是用u盘或移动硬盘等存储设备来拷贝,这样速度慢,而且可能拷贝多次才能将数据拷贝完。现提供一种方法,就是通过windows 的文件共享来实现。通过千兆网线直接连…

旅行社网站建设策划书站长统计导航窗口

1.在数据库中新建一个表,设置列名(与待导入文件一致),字段可以多出几个都可以 2.右键表名,导入- - >导入使用本地加载的CSV数据 选择使用加载本地CVS数据 3.指定好转义字符,将终止设置为,号(英文状态下…

建设工程资讯哪个网站好腾讯云cos wordpress

TCP/UDP 1、TCP三次握手 四次挥手? TCP是一种面向连接的、可靠的字节流服务。在建立TCP连接时,需要进行三次握手,而在关闭TCP连接时,需要进行四次挥手。具体来说,TCP三次握手的过程如下: 客户端向服务端发送SYN报文,表示请求建立连接。服务端收到SYN报文后,向客户端发…

学校门户网站建设说明网站建设代码优化

STM32 IAP应用开发--bootloader升级程序 Chapter1 STM32 IAP应用开发——通过串口/RS485实现固件升级(方式2)前言什么是IAP?什么是BootLoader? 方案介绍:1)bootloader部分:2)APP部分…

wordpress外贸建站公司广州seo网站设计

所有的音视频凯源代码在这里:http://sourceforge.net/directory/audio-video/os:windows/,你可以下载分析,视频不懂请发邮件给我,帮你分析。 0.视频项目 0.1 VLC media player VLC 多媒体播放器(最初为VideoLAN Clien…

免费的做微博的网站模板腾讯网站建设分析

拦截器,通俗来来将,就是我们将访问某个路径的请求给拦截下来,然后可以对这个请求做一些操作 基本使用 创建拦截器类 让类实现HandlerInterceptor接口,重写接口中的三个方法。 Component //定义拦截器类,实现Handle…

网站建设要经历哪些步骤?wordpress栏目去掉

目录 引言 1 在centos上安装mysql 1.1 在云服务器上安装 Docker 1.2 在 Docker 中运行 MySQL 容器 2 安装sysbench并进行性能测试 2.1 安装和配置 sysbench 2.2 运行 sysbench 性能测试 3 分析测试结果 3.1 运行结果 3.2 对运行结果进行翻译 3.3 性能分析 4 清理…

如何做网站么做网站商标分类

用自定义注解做点什么 前言 你不一定听过注解,但你一定对Override不陌生。 当我们重写父类方法的时候我们就看到了Override。我们知道它表示父类方法被子类重写了。 现在告诉你,Override就是一个注解。 也许你会疑惑注解是什么? 注解&…

怎么提高网站打开速度施工企业在其施工资质许可内自建自用的工程

1.vim vim 是vi的升级版本.vi 文件名(vi方向键用不了) vim 的官方网站 (welcome home : vim online) 自己也说 vim 是一个程序开发工具而不是文字处理软件。 2.安装vim sudo apt install vim 如果出错了:apt update:刷新软件源; 出现"无法获得锁 之类的"sudo rm 文件…

南京本地网站有哪些网站开发工程师试用期

system表空间增大是正常的,但急剧增大是不合理的。1有可能是用户对象错误的放在系统表空间中2也可能是system表空间的UNDO过大3还有可能和高级复制的空间使用有关可通过如下语句查看一下是不是有应用的段放到了SYSTEM中:select OWNER,SEGMENT_NAME,SEGME…

常州微信网站建设效果wordpress 商成

win11下安装odoo17 odoo17发行了,据说,UI做了很大改进,今天有空,体验一下 打开官方仓库: https://github.com/odoo/odoo 默认的版本已经变成17了 打开odoo/odoo/init.py,发现对python版本的要求也提高了…

网站建设 赚钱吗怎么做网站seo

文章目录 概述异常类型中断终止Abort复位Reset系统调用 异常处理流程异常入口异常返回异常返回地址 堆栈选择 异常向量表异常向量表的配置 同步异常解析相关参考 概述 异常处理指的是处理器在运行过程中发生了外部事件,导致处理器需要中断当前执行流程转而去处理异…

山西太原网站建设公司有哪些wordpress弹窗登录代码

Postman的环境变量以及全局变量 设置接口的环境变量(环境变量就是全局变量),设置接口的全局变量(全局变量是能够在任何接口里面访问的变量) 全局变量通过 {{变量名}} 获取 接口关联 场景:需要将“登录接口…

学校网站建设注意点通州重庆网站建设

边缘路由器是什么意思?边缘路由器是连接网络的边界点和其他网络的路由器,边缘路由器主要位于网络的外围,而处在网络中心的路由器则是核心路由器,核心路由器和边缘路由器是两个相对的概念,边缘路由器与普通的路由器大小…

网站开发 后端根据网站集约化建设的要求

一 前言MySQL 5.7.8 之后 支持 JSON (由rfc7159规定)数据类型,其能在字段中使用json 类型,做到了自动校验是否为json类型数据,否则插入数据会报异常;其次,储存json数据内部做到了优化储存,能够快速读取json…

宁夏建设投资集团公司网站哪家网站开发公司好

AVL树----java AVL树是高度平衡的二叉查找树 1.单旋转LL旋转 理解记忆&#xff1a;1.在不平衡的节点的左孩子的左孩子插入导致的不平衡&#xff0c;所以叫LL private AVLTreeNode<T> leftLeftRotation(AVLTreeNode<T> k2) {AVLTreeNode<T> k1;k1 k2.left;k2…

兰亭集势的网站平台建设网站建设实验的总结

网站被劫持了怎么办 建议新建一个index.html文件&#xff0c;文件中只写几个数字&#xff0c;上传到网站根目录&#xff0c;然后访问网站域名&#xff0c;看看是不是正常&#xff0c;从而可以确定是程序问题还是域名被劫持的问题。 如果是域名被劫持&#xff0c;你可以登录你…

哪个公司网站备案快win7局域网网站建设

说明 以前用过一段时间傲游浏览器&#xff0c;渐渐的习惯了它的鼠标手势和一些细微的人性化的功能。比方地址栏左边的“近期訪问的页面”button。能够方便的找到近期 20 条历史记录。 但后来因为某些原因又回到了 Chrome 的怀抱&#xff0c;于是就没有了这些不起眼但非常好用的…

asp.net 网站开发框架H5 网站

云栖号资讯&#xff1a;【点击查看更多行业资讯】 在这里您可以找到不同行业的第一手的上云资讯&#xff0c;还在等什么&#xff0c;快来&#xff01; 学习 HBase 最难的地方在于要让你的脑子真正理解它是什么。 HBase&#xff1a;Google BigTable 的开源实现 我们经常会把关…