vue集成openlayers(vue+openlayers)加载geojson并实现点击弹窗教程

本文详细介绍了如何使用vue-cli创建项目,集成OpenLayers库,并逐步教你新建olmap.vue组件,加载GeoJSON数据。通过实例代码展示如何在Vue应用中实现地图上点击事件触发弹窗。
摘要由CSDN通过智能技术生成

第一步:安装vue-cli

cnpm install -g @vue/cli

第二步:新建一个项目

1.新建项目 (vue-openlayers为项目名),并选择default模版

vue create vue-openlayers

2.安装openlayers

cnpm i -S ol

第三步:写业务代码

1.删除掉HelloWorld.vue 新建 olmap.vue组件

components/olmap.vue代码:

<template>
    <div id="map" ref="rootmap">
       <div class="vm">
        <!-- <h2 class="h-title">弹窗 popup</h2> -->
        
        <!-- 弹窗元素 -->
        <div id="popup" class="ol-popup" ref="popup">
          <a href="#" id="popup-close" class="ol-popup-closer" @click="closePopup"></a>
          <div class="popup-content">
            <table id="routeBox">
                <tbody>
                    <tr>
                    </tr>
                    <tr>
                        <td>所在图层:</td>
                        <td>{
   {
   layerName}}</td>
                    </tr>
                    <tr>
                        <td>handle:</td>
                        <td>{
   {
   handle}}</td>
                    </tr>
                    <tr>
                        <td>块名称:</td>
                        <td>{
   {
   blockName}}</td>
                    </tr>
                </tbody>
            </table>
          </div>
        </div>
      </div>
    </div>
</template>

<script>
import "ol/ol.css";
import {
    Map, View } from "ol";
// import TileLayer from "ol/layer/Tile";

import VectorLayer from "ol/layer/Vector";

// import OSM from "ol/source/OSM";
import VectorSource from "ol/source/Vector";
// import Feature from "ol/Feature";
import GeoJSON from "ol/format/GeoJSON";
import Style from "ol/style/Style";
import Stroke from "ol/style/Stroke";
import Fill from "ol/style/Fill";
// import Select from "ol/interaction/Select"
// import {bbox} from 'ol/loadingstrategy';
import Point from "ol/geom/Point";
import {
    transform } from "ol/proj";
import Text from "ol/style/Text";
import Overlay  from "ol/Overlay";
export default {
   
  data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值