国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題

這篇具有很好參考價(jià)值的文章主要介紹了uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

寫一篇文章來(lái)記錄以下我在開(kāi)發(fā)小程序地圖過(guò)程中遇到的兩個(gè)小坑吧,一個(gè)是點(diǎn)聚合,用的是joinCluster這個(gè)指令,另一個(gè)是polygon在地圖上劃分多邊形的問(wèn)題:

1.首先說(shuō)一下點(diǎn)聚合問(wèn)題,由于之前沒(méi)有做過(guò)小程序地圖問(wèn)題,所以瀏覽了很多資料,最終發(fā)現(xiàn)看的多了反而雜亂,而且這次要完成的不是地圖單點(diǎn)定位或者地圖導(dǎo)航,而是地圖撒點(diǎn),在地圖上要顯示很多定位點(diǎn),那么點(diǎn)數(shù)過(guò)多且覆蓋就成了一個(gè)要解決的問(wèn)題,我上網(wǎng)搜了大量的資料,要么自己手寫,要么引入很多其它組件方式看起來(lái)比較復(fù)雜,直接說(shuō)最簡(jiǎn)單的結(jié)論,在撒的markers點(diǎn)內(nèi)部直接加一個(gè)joinCluster: true即可,藏在官方文檔marker介紹下的最下面:

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題,uni-app,小程序,vue.js,前端,javascript

?

然后最坑的來(lái)了,加了這個(gè)之后會(huì)發(fā)現(xiàn)微信開(kāi)發(fā)者工具里面縮放地圖并沒(méi)有反應(yīng),無(wú)論縮放地圖與否,都不會(huì)聚合,實(shí)際上這是開(kāi)發(fā)者工具的問(wèn)題,它是一個(gè)模擬器不能完全實(shí)現(xiàn)手機(jī)小程序上的所有功能,這時(shí)候如果打開(kāi)真機(jī)調(diào)試或者二維碼預(yù)覽即可發(fā)現(xiàn)點(diǎn)聚合功能是可以實(shí)現(xiàn)的,下面給大家一段代碼:

<template>
	<view class="base_body">
		<map :markers="markers" id="map1" style="width: 100%; height: 100vh;" :latitude="latitude"
			:longitude="longitude">
			<cover-view slot="callout">
				<block v-for="(item,index) in markers" :key="index">
					<cover-view class="customCallout" :marker-id="item.id">
						<cover-view class="content">
							{{item.title}}
						</cover-view>
					</cover-view>
				</block>
			</cover-view>
		</map>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				map: '',
				latitude: 39.890, // 地圖默認(rèn)顯示的維度
				longitude: 116.39752, // 地圖默認(rèn)顯示的緯度
				markers: [{ // 標(biāo)記點(diǎn)
					id: 1,
					latitude: 39.890,
					longitude: 116.39752,
					title: "點(diǎn)擊提示1",
					joinCluster: true,
				}, {
					id: 2,
					latitude: 39.891,
					longitude: 116.39752,
					title: "點(diǎn)擊提示2",
					joinCluster: true,
				}, {
					id: 3,
					latitude: 39.892,
					longitude: 116.39752,
					title: "點(diǎn)擊提示3",
					joinCluster: true,
				}, {
					id: 4,
					latitude: 39.893,
					longitude: 116.39752,
					title: "點(diǎn)擊提示4",
					joinCluster: true,
				}, ],
			}
		},
		onLoad() {

		},
		onReady() {},
		methods: {

		}
	}
</script>

<style>
	.base_body {
		width: 100%;
		height: 100%;
		position: absolute;
	}

	/* 水平,垂直居中 */
	.base_all_center {
		justify-content: center;
		align-items: center;
	}

	/* 垂直居中 */
	.base_center_vertical {
		display: flex;
		align-items: center;
	}

	/* 水平居中 */
	.base_center_horizontal {
		display: flex;
		justify-content: center;
	}

	/* 垂直布局 */
	.base_column {
		display: flex;
		flex-direction: column;
	}

	/* 橫向布局 */
	.base_row {
		display: flex;
		flex-direction: row;
	}

	/* 基礎(chǔ)dialog */
	.base_dialog {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0px;
		background: rgba(0, 0, 0, 0.5);
	}

	.customCallout {
		box-sizing: border-box;
		background-color: #fff;
		border: 1px solid #ccc;
		border-radius: 30px;
		width: 150px;
		height: 40px;
		display: inline-flex;
		padding: 5px 20px;
		justify-content: center;
		align-items: center;
	}

	.content {
		flex: 0 1 auto;
		margin: 0 10px;
		font-size: 14px;
	}
</style>

這一段代碼不需要有任何修改,直接新建一個(gè)demo頁(yè)面然后復(fù)制進(jìn)去直接運(yùn)行到微信小程序,之后啟動(dòng)真機(jī)調(diào)試即可發(fā)現(xiàn)點(diǎn)聚合功能是實(shí)現(xiàn)了的,更多細(xì)節(jié)大家可以自行了解。

2.第二個(gè)問(wèn)題是劃分多邊形的問(wèn)題,我查閱了微信官方文檔上面說(shuō)使用polygon即可:

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題,uni-app,小程序,vue.js,前端,javascript

?于是我使用了,但是無(wú)論我怎么填寫數(shù)據(jù)都沒(méi)用,一度懷疑自我,這時(shí)候發(fā)現(xiàn)還是要以u(píng)ni-app官方文檔為準(zhǔn),我死磕微信開(kāi)發(fā)文檔導(dǎo)致自己懷疑自我,兩者有所區(qū)別,這是uni-app官方文檔的介紹:

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題,uni-app,小程序,vue.js,前端,javascript

?沒(méi)錯(cuò),uni-app官方文檔顯示應(yīng)該加一個(gè)s,用的是polygons,所以僅僅加一個(gè)s即可,非常搞心態(tài),而且即使是uni-app官網(wǎng)下方對(duì)于這個(gè)的介紹也沒(méi)加s:

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題,uni-app,小程序,vue.js,前端,javascript

下面也給大家一段代碼是劃了一個(gè)多邊形,和上面一樣,直接復(fù)制代碼進(jìn)去運(yùn)行即可,不需要修改其它東西 :

<template>
	<view class="base_body">
		<map :polygons="polygon" id="map1" style="width: 100%; height: 100vh;" :latitude="latitude"
			:longitude="longitude">
			<cover-view slot="callout">
				<block v-for="(item,index) in markers" :key="index">
					<cover-view class="customCallout" :marker-id="item.id">
						<cover-view class="content">
							{{item.title}}
						</cover-view>
					</cover-view>
				</block>
			</cover-view>
		</map>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				map: '',
				latitude: 39.890, // 地圖默認(rèn)顯示的維度
				longitude: 116.39752, // 地圖默認(rèn)顯示的緯度
				polygon: [{
					points: [{
							latitude: 39.890,
							longitude: 116.39752
						},
						{
							latitude: 39.891,
							longitude: 116.39852
						},
						{
							latitude: 39.892,
							longitude: 116.39852
						},
						{
							latitude: 39.893,
							longitude: 116.39752
						},
					],
					strokeWidth: "2",
					strokeColor: "#2223FD",
					fillColor: "#9FA4F6"
				}, ],
			}
		},
	}
</script>

<style>
	.base_body {
		width: 100%;
		height: 100vh;
		position: absolute;
	}

	/* 水平,垂直居中 */
	.base_all_center {
		justify-content: center;
		align-items: center;
	}

	/* 垂直居中 */
	.base_center_vertical {
		display: flex;
		align-items: center;
	}

	/* 水平居中 */
	.base_center_horizontal {
		display: flex;
		justify-content: center;
	}

	/* 垂直布局 */
	.base_column {
		display: flex;
		flex-direction: column;
	}

	/* 橫向布局 */
	.base_row {
		display: flex;
		flex-direction: row;
	}

	/* 基礎(chǔ)dialog */
	.base_dialog {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0px;
		background: rgba(0, 0, 0, 0.5);
	}

	.customCallout {
		box-sizing: border-box;
		background-color: #fff;
		border: 1px solid #ccc;
		border-radius: 30px;
		width: 150px;
		height: 40px;
		display: inline-flex;
		padding: 5px 20px;
		justify-content: center;
		align-items: center;
	}

	.content {
		flex: 0 1 auto;
		margin: 0 10px;
		font-size: 14px;
	}
</style>

最終結(jié)果就是顯示一塊多邊形:

uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題,uni-app,小程序,vue.js,前端,javascript

先說(shuō)這么多,后續(xù)遇到什么問(wèn)題我會(huì)繼續(xù)上傳的,諸君共勉。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-681072.html

到了這里,關(guān)于uni-app開(kāi)發(fā)小程序中遇到的map地圖的點(diǎn)聚合以及polygon劃分區(qū)域問(wèn)題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uni-app微信小程序打開(kāi)第三方地圖

    uni-app微信小程序打開(kāi)第三方地圖

    小程序中有個(gè)按鈕點(diǎn)擊以后會(huì)調(diào)用手機(jī)中第三方地圖進(jìn)行導(dǎo)航。 參數(shù) 位置信息 經(jīng)度 與緯度。 原本以為一切順利,結(jié)果在微信開(kāi)發(fā)者工具中顯示如下: location參數(shù)格式錯(cuò)誤,請(qǐng)正確填寫 經(jīng)過(guò)測(cè)試發(fā)現(xiàn),因?yàn)槲以谖⑿判〕绦蛑惺褂茫阅J(rèn)會(huì)使用騰訊地圖來(lái)顯示。 而我的經(jīng)

    2024年02月06日
    瀏覽(103)
  • uni-app 小程序使用什么地圖好(百度,高德,騰訊)

    uni-app 小程序使用什么地圖好(百度,高德,騰訊)

    前言 在開(kāi)發(fā)小程序的時(shí)候我們會(huì)發(fā)現(xiàn)經(jīng)常需要地圖的使用,但是市面上主流的地圖有騰訊,高德,百度。哪個(gè)好了 其實(shí)在我看來(lái)這個(gè)3地圖沒(méi)有好壞之分,各有所長(zhǎng)。只是說(shuō)哪個(gè)地圖寫小程序更加輕便,更加低耦合。 后面我把他們都試了一下發(fā)現(xiàn),他們的使用方式都差不多,

    2024年02月09日
    瀏覽(20)
  • 基于uni-app的微信小程序Map事件穿透處理

    業(yè)務(wù)需要在微信小程序中使用地圖組件,上面需要有點(diǎn)位及點(diǎn)位的交互,同時(shí)地圖上也會(huì)有一些懸浮的按鈕、彈窗之類的。在微信小程序2.8.x的版本之后,地圖這種原生組件是支持同層渲染的,也就是可以通過(guò)樣式控制層級(jí)。在開(kāi)發(fā)者工具中表現(xiàn)正常,但是上了真機(jī)后會(huì)發(fā)現(xiàn)點(diǎn)

    2024年02月11日
    瀏覽(53)
  • uni-app微信小程序結(jié)合騰訊地圖獲取定位導(dǎo)航以及城市選擇器

    uni-app微信小程序結(jié)合騰訊地圖獲取定位導(dǎo)航以及城市選擇器

    目錄 第一步:登錄小程序公眾平臺(tái)==設(shè)置==第三方設(shè)置 ?第二步:登錄騰訊地圖申請(qǐng)屬于自己小程序的key ?第三步:找到騰訊地圖的插件??????? ?第四步:添加插件與允許授權(quán) ?第五步:使用 ? ?騰訊地圖后臺(tái):https://lbs.qq.com/dev/console/application/mine ? ?添加key,授權(quán)使

    2023年04月12日
    瀏覽(106)
  • uni-app開(kāi)發(fā)微信小程序經(jīng)常遇到的一些問(wèn)題及解決方案

    ?? 可以使用uni.getUserInfo接口獲取用戶信息。需要用戶授權(quán)。 ? 可以使用uni-app提供的頁(yè)面組件內(nèi)置下拉刷新功能,也可以自定義下拉刷新組件。 ? 可以在頁(yè)面onReachBottom方法中監(jiān)聽(tīng)上拉事件,當(dāng)觸發(fā)上拉事件時(shí),觸發(fā)加載更多數(shù)據(jù)的操作。 ??? 可以使用uni.uploadFile接口實(shí)現(xiàn)圖

    2024年02月14日
    瀏覽(43)
  • uni-app map路線軌跡回放功能及turf.js實(shí)現(xiàn)緩沖區(qū)渲染(微信小程序)

    uni-app map路線軌跡回放功能及turf.js實(shí)現(xiàn)緩沖區(qū)渲染(微信小程序)

    使用uni-app中 map組件實(shí)現(xiàn)路線軌跡回放功能。? 1、通過(guò)接口獲取返回的軌跡點(diǎn)。 2、地圖的坐標(biāo)系與軌跡點(diǎn)的坐標(biāo)系要保持一致,否則軌跡有偏差。點(diǎn)經(jīng)緯度轉(zhuǎn)換,wgs84togcj02 =》js工具類合集(utils.js) 3、繪制開(kāi)始結(jié)束點(diǎn),設(shè)置地圖經(jīng)緯度。 4、polyline,繪制路線點(diǎn),屬性:[

    2024年02月11日
    瀏覽(108)
  • 【備忘錄】uni-app的地圖相關(guān)組件操作,uni-app接入騰訊地圖API的具體實(shí)現(xiàn)

    【備忘錄】uni-app的地圖相關(guān)組件操作,uni-app接入騰訊地圖API的具體實(shí)現(xiàn)

    官方幫助文檔:https://lbs.qq.com/miniProgram/jsSdk/jsSdkGuide/jsSdkOverview 進(jìn)行一些簡(jiǎn)單的配置 Uniapp提供的位置相關(guān)的服務(wù): https://uniapp.dcloud.net.cn/api/location/location.html UniApp提供的地圖組件 https://uniapp.dcloud.net.cn/component/map.html 文檔針對(duì)微信小程序進(jìn)行設(shè)置,其他端使用這些組件還需要參

    2023年04月26日
    瀏覽(139)
  • uni-app開(kāi)發(fā) 小程序直播功能

    uni-app開(kāi)發(fā) 小程序直播功能

    1、微信后臺(tái)申請(qǐng)插件開(kāi)通 2、微信后臺(tái)開(kāi)通直播功能 3、代碼中接入直播插件AppID 4、【直播組件】如何使用 5、直播組將狀態(tài)獲取 微信開(kāi)發(fā)直播功能,需要企業(yè)賬號(hào); 需要申請(qǐng)直播功能和插件 1、微信后臺(tái)申請(qǐng)插件開(kāi)通 微信后臺(tái) 登錄微信后臺(tái) 點(diǎn)擊設(shè)置中的第三方設(shè)置 — 添

    2024年02月05日
    瀏覽(23)
  • uni-app開(kāi)發(fā)微信小程序使用vant組件tab欄遇到的坑van-tabs

    uni-app開(kāi)發(fā)微信小程序使用vant組件tab欄遇到的坑van-tabs

    背景: 使用uni-app開(kāi)發(fā)微信小程序項(xiàng)目,使用的是Vant Weapp實(shí)現(xiàn)Tab標(biāo)簽頁(yè)。 要實(shí)現(xiàn)跳轉(zhuǎn)過(guò)來(lái),顯示默認(rèn)的當(dāng)前tab。 在app.json或index.json中引入組件 通過(guò)active設(shè)定當(dāng)前激活標(biāo)簽對(duì)應(yīng)的索引值,默認(rèn)情況下啟用第一個(gè)標(biāo)簽。 data中的屬性 頁(yè)面接受參數(shù),默認(rèn)顯示對(duì)應(yīng)的tab 問(wèn)題 到此

    2024年02月10日
    瀏覽(35)
  • 使用vscode開(kāi)發(fā)配置uni-app(小程序)

    使用vscode開(kāi)發(fā)配置uni-app(小程序)

    這個(gè)文件是用 VsCode 寫 uniapp 小程序的步驟筆記 安裝Vue腳手架(vue-cli) 通過(guò)腳手架創(chuàng)建 uni-app 項(xiàng)目 我們是初學(xué)者就直接選擇默認(rèn)模板 創(chuàng)建好后用vscode打開(kāi)項(xiàng)目 安裝vue語(yǔ)法提示插件 vetur 和 vue-helper 安裝組件語(yǔ)法提示 初始化npm 從git下載代碼塊放到項(xiàng)目目錄下的 .vscode (沒(méi)有文件夾

    2024年02月08日
    瀏覽(119)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包