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

Vue3使用shapefile读取矢量数据,以数组形式返回坐标点

npm安装:

npm install shapefile --save-dev

源码:

<script setup>
import { ElMessage } from 'element-plus';
import { ref } from 'vue'; // 引入 ref
import * as shapefile from "shapefile";// 使用 ref 创建一个引用
const uploadRef = ref(null);// 解析文件
const fileChange = (param) => {console.log(param.file)// 直接使用 uploadRef 引用来调用 clearFiles 方法uploadRef.value.clearFiles()const reader = new FileReader()const fileData = param.file// 读取文件reader.readAsArrayBuffer(fileData)reader.onload = function () {// 定义geojson数组, 一个shp里会有多个面, 即有多个geometrylet geojsonArr = []shapefile.open(this.result).then((source) => {source.read().then(function log(result){if (result.done) {// 解析完成console.log(geojsonArr)}const json = result.valuegeojsonArr.push(json)return source.read().then(log)})}).catch((error) => {console.error(error.stack)ElMessage.error("读取shp文件失败")})}
}
</script>
<template><el-upload ref="uploadRef" action="111111" :limit="1" :file-list="fileList" accept="shp" :http-request="fileChange":auto-upload="true"><el-button slot="trigger" size="small" type="primary">上传文件</el-button></el-upload>
</template>
<style scoped></style>

效果展示:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • [SDX35+WCN6856]SDX35 + WCN6856 WiFi导致系统crash问题分析及解决方案
  • .Net Core 生成管理员权限的应用程序
  • Linux--守护进程与会话
  • Open3D 特征点匹配(Python)
  • VB中如何实现Windows服务(Windows Service)
  • linux操作系统的引导和修复
  • Qt_多元素控件
  • IEEE-754 32位十六进制数 转换为十进制浮点数
  • 论文解读《NewsBench:一个评估中文新闻大型语言模型编辑能力的系统评估框架》
  • C语言的指针运算
  • AI教你学Python 第11天 : 局部变量与全局变量
  • Vert.x HttpClient调用后端服务时使用Idle Timeout和KeepAlive Timeout的行为分析
  • kubernetes 学习 尚硅谷
  • IMS 呼叫流程(详细)
  • window下idea中scala的配置
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • CEF与代理
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • gitlab-ci配置详解(一)
  • go语言学习初探(一)
  • Idea+maven+scala构建包并在spark on yarn 运行
  • java第三方包学习之lombok
  • quasar-framework cnodejs社区
  • React16时代,该用什么姿势写 React ?
  • SpiderData 2019年2月25日 DApp数据排行榜
  • Vue2.x学习三:事件处理生命周期钩子
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • Web标准制定过程
  • yii2中session跨域名的问题
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 浮现式设计
  • 技术胖1-4季视频复习— (看视频笔记)
  • 前端代码风格自动化系列(二)之Commitlint
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 微服务核心架构梳理
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​学习笔记——动态路由——IS-IS中间系统到中间系统(报文/TLV)​
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #Lua:Lua调用C++生成的DLL库
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • #VERDI# 关于如何查看FSM状态机的方法
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (4.10~4.16)
  • (C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。
  • (SpringBoot)第二章:Spring创建和使用
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (十一)图像的罗伯特梯度锐化
  • (一)Neo4j下载安装以及初次使用
  • (一)u-boot-nand.bin的下载
  • (一)基于IDEA的JAVA基础12
  • .DFS.
  • .net core 连接数据库,通过数据库生成Modell