Vue結(jié)合Openlayers使用Overlay添加Popup彈窗實現(xiàn)
最近使用 Vue 和 Openlayers 寫了一個簡單的小 dom ,用到了 Overlay 的彈窗功能,記錄一下!
實驗數(shù)據(jù):test.xls

項目運行效果

創(chuàng)建元素:
<div ref="popCon" id="popup" v-show="isShow"><!-- 彈出信息框 -->
<span class="iconfont icon-guanbi" @click="closePop"></span>
<ul id="info">
<h4>基本信息</h4>
<p>-------------------------------</p>
<p>名稱:{{name}}</p>
<p>面積:{{output}}</p>
</ul>
</div>引入依賴:
import 'ol/css';
import{ Overlay } from 'ol'添加事件:
getArea(){
let _this = this;
let sourceProj = this.map.getView().getProjection()//地圖數(shù)據(jù)源投影坐標系4490
let select = new Select();
this.map.addInteraction(select);
select.on('select',function(e){
let area = Math.abs(getArea(e.selected[0].getGeometry(),{
"projection": sourceProj,
"radius": 6371008.8
}))
console.log(area);
_this.output = _this.formatArea(area);
console.log(_this.output);
let elPopup = _this.$refs.popCon;
let popup = new Overlay({
element: elPopup, //掛載元素
positioning:"center-center",
stopEvent: false,
offset:[0,-20]
})
_this.map.addOverlay(popup)
let center = getCenter(e.selected[0].getGeometry().getExtent())
if(center){
_this.isShow = true
popup.setPosition(center)
}else{
_this.isShow = false
}
})
},樣式信息:
<style>
#popup{
width: 200px;
background-color: white;
padding: 18px;
border-radius: 10px;
box-shadow: 0 0 15px rgb(177,177,177);
}
#popup span{
position: absolute;
top: 0%;
right: 0%;
}
#info{
font-size: 14px;
text-align: left;
}
</style>運行結(jié)果:

dom下載鏈接:
到此這篇關(guān)于Vue結(jié)合Openlayers使用Overlay添加Popup彈窗實現(xiàn)的文章就介紹到這了,更多相關(guān)Vue Openlayers添加Popup彈窗內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue?router權(quán)限管理實現(xiàn)不同角色顯示不同路由
本文主要介紹了vue?router權(quán)限管理實現(xiàn)不同角色顯示不同路由,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
SyntaxError:?/xx.vue:?Unexpected?token,?expected?“,“錯誤解
這篇文章主要為大家介紹了SyntaxError:?/xx.vue:?Unexpected?token,?expected?“,“錯誤解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08
vue+render+jsx實現(xiàn)可編輯動態(tài)多級表頭table的實例代碼
這篇文章主要介紹了vue+render+jsx實現(xiàn)可編輯動態(tài)多級表頭table的實例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的工作或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
Vue3+TS實現(xiàn)數(shù)字滾動效果CountTo組件
最近開發(fā)有個需求需要酷炫的文字滾動效果,發(fā)現(xiàn)vue2版本的CountTo組件不適用與Vue3,沒有輪子咋辦,那咱造一個唄,感興趣的小伙伴可以跟隨小編一起了解一下2022-11-11
關(guān)于vue路由監(jiān)聽事件跳轉(zhuǎn)的問題
這篇文章主要介紹了關(guān)于vue路由監(jiān)聽事件跳轉(zhuǎn)的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08
vue3+typescript實現(xiàn)圖片懶加載插件
這篇文章主要介紹了vue3+typescript實現(xiàn)圖片懶加載插件,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下2020-10-10
解決VUE項目使用Element-ui 下拉組件的驗證失效問題
這篇文章主要介紹了解決VUE項目使用Element-ui 下拉組件的驗證失效問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11

