微信小程序JS加載esmap地圖的實(shí)例詳解
一、在微信小程序里顯示室內(nèi)三維地圖 需要滿足的兩個(gè)條件
調(diào)用ESMap室內(nèi)地圖需要用到小程序web-view組件,想要通過 web-view 調(diào)用ESMap室內(nèi)地圖需要滿足以下 2 個(gè)條件:
1. 小程序是企業(yè)主體,微信 web-view 組件不對(duì)個(gè)人類型的小程序開放。
2. 您需要有一個(gè)自己的域名,在嵌入網(wǎng)頁的時(shí)候需要在微信后臺(tái)驗(yàn)證域名(只有自己域名下的網(wǎng)頁才能被正確地顯示哦,不能隨便找一個(gè)公開鏈接)。

二、具體實(shí)現(xiàn)步驟
1、域名驗(yàn)證:
由于微信平臺(tái)的規(guī)定,web-view 指向的地址,必須是在微信小程序后臺(tái)登記的域名,否則會(huì)出現(xiàn)“不支持打開非業(yè)務(wù)域名,請(qǐng)重新配置”的提示。
首先我們?cè)谖⑿诺暮笈_(tái)找到開發(fā) > 開發(fā)設(shè)置 > 業(yè)務(wù)域名模塊,并填上你需要綁定的域名。

需要注意的是,這里的域名強(qiáng)制 https,需要配置好 https 證書,購買服務(wù)器的時(shí)候也要注意購買支持 https 的服務(wù)器。
接下來,我們需要下載一個(gè)微信的驗(yàn)證文件,放在你域名的根目錄下,并且支持訪問。
具體來說,如果您的域名www.esmap.cn,微信的驗(yàn)證文件是WATLNxupm4.txt,您需要確保https://www.esmap.cn/WATLNxupm4.txt 可以公開訪問。確認(rèn)無誤之后,點(diǎn)擊保存即可成功保存。
注:小程序所有用到的https請(qǐng)求都需要配置合法域名
2、嵌入帶有室內(nèi)地圖的web-view
這個(gè)過程其實(shí)很簡(jiǎn)單,找到你微信小程序的.wxml文件,添加以下代碼
<web-viewsrc="https://www.esmap.cn /esmap.html"/>
其中 https://www.esmap.cn /esmap.html 是帶有地圖的 H5 頁面
室內(nèi)地圖制作流程,您可以使用下面兩種方式構(gòu)建這個(gè)頁面:
1) 從https://www.esmap.cn 官網(wǎng)中復(fù)制測(cè)試地圖源碼DEMO,在您自己的服務(wù)器進(jìn)行免費(fèi)部署。
2) 參考https://www.esmap.cn 室內(nèi)三維地圖SDK開發(fā)說明,在您已有的 H5 頁面上添加自己制作的室內(nèi)地圖。
3、小程序 web-view 的一些提示
微信小程序的 web-view 只能是全屏的,并且會(huì)覆蓋頁面中的所有其他組件。
1) 如果想在網(wǎng)頁中判斷是否處于微信小程序中
var ua = window.navigator.userAgent.toLowerCase();
if (ua.indexOf('micromessenger') == -1) {//說明不在微信中
// 走不在小程序的邏輯
} else {
wx.miniProgram.getEnv(function(res) {
if (res.miniprogram) {
// 走在小程序的邏輯
} else {
// 走不在小程序的邏輯
}
})
}
2) 如果網(wǎng)頁想給小程序傳遞信息,可以通過 wx.miniProgram.postMessage 方法。
3) 小程序中可以通過 postMessage 方法監(jiān)聽網(wǎng)頁傳遞回來的數(shù)據(jù),但是該方法僅在特定時(shí)機(jī)(小程序后退、組件銷毀、分享)觸發(fā),沒法實(shí)時(shí)傳遞消息。
4) 網(wǎng)頁跳轉(zhuǎn)到小程序頁面
wx.miniProgram.navigateTo({
url: '/pages/esmap/esmap?location=' + obj.location
});
三、更多效果!


更多室內(nèi)三維地圖引擎例子功能體驗(yàn)
https://www.esmap.cn/sdk-demo/demo/index.html?tt=cnblogs5
總結(jié)
以上所述是小編給大家介紹的微信小程序JS加載esmap地圖的實(shí)例,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
bootstrap常用組件之頭部導(dǎo)航實(shí)現(xiàn)代碼
這篇文章主要介紹了bootstrap常用組件之頭部導(dǎo)航實(shí)現(xiàn)代碼,然后對(duì)個(gè)別常用屬性進(jìn)行了解釋,需要的的朋友參考下吧2017-04-04
動(dòng)態(tài)JavaScript所造成一些你不知道的危害
這篇文章給大家整理了動(dòng)態(tài)JavaScript所造成的一些大家可能不知道的危害,文章介紹的很詳細(xì),有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-09-09
javascript時(shí)間自動(dòng)刷新實(shí)現(xiàn)原理與步驟
javascript時(shí)間自動(dòng)刷新在應(yīng)用中很常見,本人今天整理了一些,感興趣的朋友可以參考下哦2013-01-01
js與jQuery實(shí)現(xiàn)的用戶注冊(cè)協(xié)議倒計(jì)時(shí)功能實(shí)例【三種方法】
這篇文章主要介紹了js與jQuery實(shí)現(xiàn)的用戶注冊(cè)協(xié)議倒計(jì)時(shí)功能,結(jié)合實(shí)例形式分析了三種倒計(jì)時(shí)功能的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-11-11
JS實(shí)現(xiàn)根據(jù)用戶輸入分鐘進(jìn)行倒計(jì)時(shí)功能
倒計(jì)時(shí)功能大家無論在各大網(wǎng)站都可以看到,今天小編給大家分享一段基于js實(shí)現(xiàn)的根據(jù)用戶輸入分鐘進(jìn)行倒計(jì)時(shí)功能,非常不錯(cuò),需要的朋友參考下吧2016-11-11
javascript在子頁面中函數(shù)無法調(diào)試問題解決方法
遇到在子頁面中提交的時(shí)候會(huì)無法能夠調(diào)試javascript代碼的情況出現(xiàn),下面有個(gè)不錯(cuò)的解決方法,希望對(duì)大家有所幫助2014-01-01

