前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue项目使用Vue2Leaflet插件实现地图显示

Vue项目使用Vue2Leaflet插件实现地图显示

作者头像
宋天伦
发布2020-07-16 10:54:54
2.7K0
发布2020-07-16 10:54:54
举报
文章被收录于专栏:frytea

简介

vue是一个渐进式javascript框架,用来快速构建网页项目,在vue框架之上结构化leaflet地图库的产物vue2leaflet可以在vue项目中很方便的加载地图,下面简单介绍一个vue2leaflet加载地图的过程。

第一个地图显示页面

第一步:新建vue项目

第二步:安装Vue2Leaflet

在项目目录下运行如下代码

npm i vue2-leaflet -S

实测项目还需安装leaflet

npm install --save leaflet

第三步: 新建VueLeaflet.vue

在components文件夹中新建vue文件VueLeaflet.vue

在template标签下增加如下内容,显示地图,并增加一个marker

代码语言:javascript
复制
<div class="vue-leaflet">
    <l-map style="width: 100%; height: 600px;" :zoom="zoom" :center="center">
      <l-tile-layer :url="url" :attribution="attribution"></l-tile-layer>
      <l-marker :lat-lng="marker">
        <l-popup :content="text"></l-popup>
      </l-marker>
    </l-map>

  </div>

在script标签,name之下增加如下内容

代码语言:javascript
复制
data () {
    return {

    }
  }

第三步:修改路由

修改index.js,将helloworld修改为vueleaflet

第四步:引入组件

在vueleaflet.vue的script标签下增加如下内容(注意合并部分)

代码语言:javascript
复制
import { LMap, LTileLayer, LMarker, LPopup } from 'vue2-leaflet'
import L from 'leaflet'
export default {
  name: 'VueLeaflet.vue',
  components: {
    LMap,
    LTileLayer,
    LMarker,
    LPopup
  },
  data () {
    return {
      zoom: 13,
      center: L.latLng(47.413220, -1.219482),
      url: 'http://{s}.tile.osm.org/{z}/{x}/{y}.png',
      attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> Haut-Gis-Org',
      marker: L.latLng(47.413220, -1.219482),
      text: 'this is a marker'
    }
  }
}

第五步:引入css

在main.js中添加

代码语言:javascript
复制
import 'leaflet/dist/leaflet.css'
import L from 'leaflet'

第六步:修改icon路径

在main.js中添加如下代码

代码语言:javascript
复制
/* leaflet icon */
delete L.Icon.Default.prototype._getIconUrl
L.Icon.Default.mergeOptions({
  iconRetinaUrl: require('leaflet/dist/images/marker-icon-2x.png'),
  iconUrl: require('leaflet/dist/images/marker-icon.png'),
  shadowUrl: require('leaflet/dist/images/marker-shadow.png')
})

项目地址

完成这个项目花费了一些精力,故将项目源码分享在了github上

GitHub

Author: Frytea

Title: Vue项目使用Vue2Leaflet插件实现地图显示

Link: https://cloud.tencent.com/developer/article/1662710

Copyright: This work by TL-Song is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 第一个地图显示页面
    • 第一步:新建vue项目
      • 第二步:安装Vue2Leaflet
        • 第三步: 新建VueLeaflet.vue
          • 第三步:修改路由
            • 第四步:引入组件
              • 第五步:引入css
                • 第六步:修改icon路径
                • 项目地址
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档