uniapp中h5端如何引用本地json数据(json文件)

前言

uniapp读取本地json数据文件,有下面两种方式可以实现:

  • 文件后缀为.json类型
  • 文件后缀为.js类型

这里展示后缀为.js类型的处理方式

1、在static中创建后缀为.js的文件存储json数据。

注意使用export导出

2、在要使用的页面导入

<template>  
<view class="map-wrap">  
    <!-- #ifdef APP-PLUS || H5 -->  
    <view id="map-box">  
    <!-- 这里是mapbox的地图容器 -->  
    </view>  
    <!-- #endif -->  
</view>  
</template>  

<script module="mapbox" lang="renderjs">
	const mapboxgl = require('!mapbox-gl/dist/mapbox-gl.js');
	import 'mapbox-gl/dist/mapbox-gl.css';
	import {point} from '../../static/point.js'
	//let map = null //地图实例  
	let dataPoint={
		type: 'FeatureCollection',
		features:[
			 {
			            type: 'Feature',
			            properties: {
			              size: 20,
			              name: '武汉'
			            },
			            geometry: {
			              type: 'Point',
			              coordinates: [114.30122, 30.598213]
			            }
			          }
		]
	}
	export default {  
	    data:{  
	        return(){  
	            map: null//地图实例  
	        }  
	    },  
	    mounted() { 
			
	        this.createdMap()  
			this.map.addControl(new mapboxgl.FullscreenControl(), 'top-left')
			this.map.on('click',e=>{
				console.log(e)
				console.log(this.map)
			})
			
			if(this.map){
				this.map.on('style.load',()=>{
					this.map.addSource('source', {
					         type: 'geojson',
					         data: point
					       })
					      this.map.addLayer({
					         id: 'layer',
					         type: 'circle',
					         source: 'source',
					         paint: {
					           'circle-radius': 20,
					           'circle-color': '#ff0000'
					         }
					       }) 
				})
				this.map.on('click','layer',(e)=>{
					console.log(e.features[0])
					this.map.setPaintProperty('layer','circle-color','green')
				})
			}
	    },  
	    methods: {  
	        createdMap() { //创建地图                 
	            mapboxgl.accessToken = '你的token';  
	            this.map = new mapboxgl.Map({  
	                container: 'map-box', // container ID  
	                style:  {
        version: 8,
        sources: {
          'raster-tiles': {
            type: 'raster',
            tiles: ['http://webrd01.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}'],
            tileSize: 256
          }
        },
        layers: [
          {
            id: 'simple-tiles',
            type: 'raster',
            source: 'raster-tiles',
            minzoom: 0,
            maxzoom: 22
          }
        ]
      }, // style URL  
	                center: [114.124064, 30.463405], // starting position [lng, lat]  
	                zoom: 9 // starting zoom  
	            });  
	        },
	    }  
	}  
</script>

<style>
	.map-wrap {  
	    position: relative;  
	    min-width: 100vw;  
	    min-height: 100vh;  
	}  
	
	#map-box {  
	
	    top: 0;  
	    left: 0;  
	    bottom: 0;  
	    right: 0;  
	    position: absolute;  
	}  
	
	#map-box /deep/ .mapboxgl-ctrl-geocoder {  
	    min-width: 140px;  
	}  
	
	#map-box /deep/ .mapboxgl-ctrl-geocoder input[type="text"] {  
	    height: 30px;  
	}  
	
	#map-box /deep/ .mapboxgl-ctrl-geocoder .geocoder-icon-search {  
	    top: 5px;  
	}  
	
	#map-box /deep/ .mapboxgl-ctrl-geocoder .geocoder-pin-right * {  
	    top: 5px;  
	}  
	
	.control-box {  
	    padding: 10rpx 30rpx;  
	    background-color: #00AAFF;  
	    position: absolute;  
	    right: 0;  
	    top: 0;  
	    z-index: 999px;  
	}  
</style>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PLC如何支持GEM300标准?SECS/GEM通讯协议

1. 提供技术服务&#xff0c;保证户使用没问题 2. 支持市场所有的常规PLC 3. 支持常规组态软件&#xff0c;如wincc、组态王、组态屏等 4. 支持各类传感器&#xff0c;私有协议、modbus、web等 5. 无需二次开发&#xff0c;只需配置映射到已有的PLC地址 GEM300协议是为了满…

快递100 物流查询API全面解析

一.基础准备 1.物流查询痛点 如何通过物流单号实时查询物流信息?如何实时查看物流地图轨迹? 使用快递 100&#xff0c;用户可以通过简单地输入快递单号来获取快递的详细物流状态&#xff0c;不仅能看到包裹目前的位置信息&#xff0c;还可以了解它的运输进展。 快递 100API…

《动手学深度学习》中d2l库的安装以及问题解决

当我们在按照《动手学深度学习》这本书或者网课学习时会有需要导入d2l库的使用。​d2I是一个与《动手学深度学习》(Dive into Deep Learning&#xff09;一书配套的开源教学库&#xff0c;它包含了作者李沐设计的深度学习相关代码和示例。这个库旨在帮助读者通过实践经验来理解…

使用 PyAnsys 在 Ansys 随机振动分析中检索螺栓连接中的力和应力

介绍 随机振动模拟通常用于评估组件承受运输过程中振动的能力。随机振动分析利用先前模态分析的频率和模式内容对通过功率谱密度 (PSD) 负载定义的频谱和功率内容进行线性叠加。在大多数装配模型中&#xff0c;螺栓连接&#xff08;由求解器变为 BEAM188 元素&#xff09;通常…

1 图的搜索 奇偶剪枝

图论——图的搜索_Alex_McAvoy的博客-CSDN博客 语雀版本 1 深度优先搜索DFS 1. 从图中某个顶点 v0 出发&#xff0c;首先访问 v0 2. 访问结点 v0 的第一个邻接点&#xff0c;以这个邻接点 vt 作为一个新节点&#xff0c;访问 vt 所有邻接点&#xff0c;直到以 vt 出发的所有节…

ElasticSearch-全文检索(一)基本介绍

简介 Elasticsearch&#xff1a;官方分布式搜索和分析引擎 | Elastic 全文搜索属于最常见的需求&#xff0c;开源的Elasticsearch是目前全文搜索引擎的首选。 它可以快速地储存、搜索和分析海量数据。维基百科、StackOverflow、Github都采用它 Elastic的底层是开源库Lucene。但…

Opengl光照测试

代码 #include "Model.h" #include "shader_m.h" #include "imgui.h" #include "imgui_impl_glfw.h" #include "imgui_impl_opengl3.h" //以上是放在同目录的头文件#include <glad/glad.h> #include <GLFW/glfw3.…

传奇996_19——龙岭总结

功能&#xff1a; 切割 切割属性&#xff1a; 即人物属性&#xff0c;可以设置临时属性或者永久属性&#xff0c;龙岭使用的是临时属性&#xff0c;所谓临时就是存在有效期&#xff0c;龙岭设置的有效期是123456789秒&#xff0c;即1428.89802天。 龙岭写法&#xff08;倒叙…

亲测有效:Maven3.8.1使用Tomcat8插件启动项目

我本地maven的settings.xml文件中的配置&#xff1a; <mirror><id>aliyunmaven</id><mirrorOf>central</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url> </mirror>…

关于 MSVCP110.dll 缺失的解决方案

背景&#xff1a;之前使用 PR&#xff08;Adobe Premiere&#xff09; 从来没有遇到过这样的问题。今天重装系统后&#xff08;window 10&#xff09;&#xff0c;想要重新安装以前的软件时&#xff0c;遇到了以下 DLL 文件缺失的错误。 解决方案&#xff1a; 可以到微软官网的…

贝叶斯网络——基于概率的图模型(详解)

贝叶斯网络&#xff08;Bayesian Network&#xff0c;简称BN&#xff09;是一种基于概率图模型的表示方法&#xff0c;用于表示变量之间的依赖关系&#xff0c;并通过条件概率推断变量间的关系。它通过有向无环图&#xff08;DAG&#xff09;来描述变量之间的依赖关系&#xff…

嵌入式硬件电子电路设计(五)MOS管详解(NMOS、PMOS、三极管跟mos管的区别)

引言&#xff1a;在我们的日常使用中&#xff0c;MOS就是个纯粹的电子开关&#xff0c;虽然MOS管也有放大作用&#xff0c;但是几乎用不到&#xff0c;只用它的开关作用&#xff0c;一般的电机驱动&#xff0c;开关电源&#xff0c;逆变器等大功率设备&#xff0c;全部使用MOS管…

cocoscreator-doc-TS-脚本开发-获取和设置资源

资源属性的声明 cc.Asset 的子类下面这些 cc.Texture2D、cc.SpriteFrame、cc.AnimationClip、cc.Prefab 等 加载场景&#xff0c;会自动加载场景关联的资源 &#xff0c;再加载关联的资源所关联的资源&#xff0c;直到全加载 在属性检查器中设置资源 property(cc.Label) la…

在Keil删除原有的组出现系统软件无响应的原因

取消掉core的勾选。 keil 添加文件夹&#xff0c;软件崩溃解决办法_keil5创建文件夹卡死-CSDN博客

超越传统:探索ONLYOFFICE的革命性办公新纪元

目录 &#x1f341;引言 &#x1f341;一、ONLYOFFICE产品简介 &#xff08;一&#xff09;、介绍 &#xff08;二&#xff09;、基本功能简介 &#x1f341;二、核心功能具体介绍 1、编辑操作 2、文本与段落&#xff1a; 3、样式与图形&#xff1a; 4、表格与图表&…

一文说清libc、glibc、glib的发展和关系

一 引言 在大家的技术生涯中&#xff0c;一定会遇到glib、glibc、libc这些个名词。 尤其像我这种对英文名脸盲的人&#xff0c;看着它们就头大&#xff0c;因为单从名字上看&#xff0c;也太像了&#xff0c;所以经常容易混淆。 即使翻翻网上的资料&#xff0c;看完还是有点懵…

OceanBase 升级过程研究(4.2.1.6-4.2.1.8)

模拟业务 使用benchmark加载10仓数据模拟业务场景 升级方法 使用滚动升级方式来进行OB升级。该方法前提是OB集群必须满足官方规定的高可用架构(如果 Zone 个数小于 3&#xff0c;滚动升级时则无法构成多数派), 滚动升级的原理就是轮流完成每个ZONE的升级工作&#xff0c;由于…

使用 Ant Design Vue 自定渲染函数customRender实现单元格合并功能rowSpan

使用 Ant Design Vue 自定渲染函数customRender实现单元格合并功能rowSpan 背景 在使用Ant Design Vue 开发数据表格时&#xff0c;我们常常会遇到需要合并单元格的需求。 比如&#xff0c;某些字段的值可能会在多行中重复出现&#xff0c;而我们希望将这些重复的单元格合并为…

Godot的开发框架应当是什么样子的?

目录 前言 全局协程还是实例协程&#xff1f; 存档&#xff01; 全局管理类&#xff1f; UI框架&#xff1f; Godot中的异步&#xff08;多线程&#xff09;加载 Godot中的ScriptableObject 游戏流程思考 结语 前言 这是一篇杂谈&#xff0c;主要内容是对我…

ssm118亿互游在线平台设计与开发+vue(论文+源码)_kaic

毕业设计(论文) 亿互游在线平台的设计与开发 学生姓名 XXX 学 号 XXXXXXXX 分院名称 XXXXXXXX 专业班级 XXXXX 指导教师 XXXX 填写日期 XXXX年…