1.安装ol库

使用cnpm i ol -s命令安装

2.建一个olMap.vue文件夹

<template>
<div class='olMap'>
<h2>{{this.name}}</h2>
<div class='map' ref='rootmap'></div>
</div>
</template> <script>
import 'ol/ol.css'
import { Map, View } from 'ol'
import mapconfig from '../../mapconfig' export default {
name: 'HomeMap',
data () {
return {
name: '地图展示',
map: null
}
},
mounted () {
var mapcontainer = this.$refs.rootmap
this.map = new Map({
target: mapcontainer,
layers: mapconfig.streetmap(),
view: new View({
projection: 'EPSG:4326',
center: [mapconfig.x, mapconfig.y],
zoom: mapconfig.zoom
})
})
}
} </script> <style lang='stylus'>
.olMap
width: 100%
.map
height: 100%
.ol-attribution
display: none
.ol-zoom
display: none
</style>

3.在首页home.vue中使用该olMap组件

<template>
<div>
<home-header></home-header>
<home-swiper></home-swiper>
<home-content></home-content>
<home-map></home-map>
</div>
</template> <script>
import HomeHeader from './components/Header'
import HomeSwiper from './components/Swiper'
import HomeContent from './components/Content'
import HomeMap from './components/olMap' export default {
name: 'Home',
components: {
HomeHeader,
HomeSwiper,
HomeContent,
HomeMap
}
}
</script> <style>
</style>

4.使用mapconfig.js文件

import TileLayer from 'ol/layer/Tile'
import TileArcGISRest from 'ol/source/TileArcGISRest'
import OSM from 'ol/source/OSM'
import XYZ from 'ol/source/XYZ' let maptype = 1
//0表示部署的离线瓦片地图,1表示OSM,2表示使用Arcgis在线午夜蓝地图服务
var streetmap=function(){
var maplayer = null
switch(maptype){
case 0:
maplayer=new TileLayer({
source: new XYZ({
url:'http://127.0.0.1:7080/streetmap/shenzhen/{z}/{x}/{y}.jpg'
})
})
break
case 1:
maplayer=new TileLayer({
source: new OSM()
})
break
case 2:
maplayer=new TileLayer({
source:new TileArcGISRest({
url:'https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineCommunity/MapServer'
})
})
break
}
return [maplayer]
} var mapconfig = {
x: 114.064839,
y: 22.548857,
zoom: 15,
streetmap: streetmap
} export default mapconfig

5.效果如下

源码地址:https://gitee.com/newGlobe/vueLearn/tree/master/src/pages/

Vue集成openlayers的更多相关文章

  1. OpenLayers Node环境安装运行构建-支持Vue集成OpenLayers

    NodeJS 环境安装包下载:https://nodejs.org/zh-cn/download/ 安装vue-cli3.0.1: https://cli.vuejs.org/guide/instal ...

  2. vue 集成 axios 发送post请求 payload导致后台无法接收到数据问题

    vue 集成axios之后,发送的post请求默认为payload 方式. 如果想改为正常的方式,需要增加headers头,并且将发送是数据json格式改为 querystring的方式. 安装依赖 ...

  3. 利用官方的vue-cli脚手架来搭建Vue集成开发环境

    在利用vue-cli脚手架搭建vue集成环境之前,我们需要先安装nodejs的环境.如果在cmd中输入node --version和npm --version出现如下的版本信息,就说明安装已经成功了. ...

  4. vue集成cesium,webgis平台第一步(附源码下载)

    vue-cesium-platform Vue结合Cesium的web端gis平台 初步效果 笔记本性能限制,运行Cesium温度飙到70度以上.所以平时开发时先开发界面,之后加载Cesium地球 当 ...

  5. SpreadJS与Vue集成,苏宁集团『极客办公』系统开发案例

    “造极”如今已成为苏宁集团的年度核心关键词.“造极”在具体工作上的体现,代表着苏宁不断追求极致的工匠精神,即对待每一个环节,都要严格要求.精益求精.“极客办公”系统,正是在这种环境下应运而生.本期公开 ...

  6. Vue 集成easyUI

    原 Vue 集成easyUI https://blog.csdn.net/m0_37948170/article/details/84960320   参考vue官网用cli创建了Vue项目之后: n ...

  7. vue集成高德地图

    vue集成高德地图 前言 二.使用步骤 1.注册高德开发平台 2.vue 结尾 前言 之前玩Thymeleaf的时候玩过高德地图,现在无聊Vue项目也整个地图进去~ 二.使用步骤 1.注册高德开发平台 ...

  8. VUE集成keycloak和Layui集成keycloak

    一:KEYCLOAK配置部分: 1,下载keycloak,官网地址:https://www.keycloak.org/downloads.html.下载第一个就行 2,下载完毕之后,打开文件,访问 b ...

  9. vue集成ckeditor富文本框,怎么获取CKEditor实例?

    CKEDITOR 版本5 ,vue集成形式 vue集成ckeditor富文本框,由于不是通过js创建的富文本对象,所以,无法取得实例对象,官方说明 官方在builds-->Getting and ...

随机推荐

  1. jQuery遇到问题的小记

    对jQuery动态加载到页面的数据进行处理的时候,要首先保证数据已经加载到页面上了.否则,处理不生效. 所以处理的代码应该保证在加载数据代码的后面. 这个问题源于对js的加载运行过程不熟悉.应该去了解 ...

  2. idea 配置 tomcat 教程

    最近在搞一个项目需要用到idea 配置tomcat,翻了翻网上的帖子发现稂莠不齐,最后决定还是自己写个吧!(其实我挺蠢的走了好多的弯路,哎~) 1.首先准备一个需要大家tomcat的工程,然后使用id ...

  3. JS高级---递归

    递归 递归: 函数中调用函数自己, 此时就是递归, 递归一定要有结束的条件   var i = 0; function f1() { i++; if (i < 5) { f1(); } cons ...

  4. 面向对象的封装、继承和多态特性_python

    一.面向对象的几个特点 面向对象也称为类,拥有下面几个特点 1.封装特性:利用类的__init__(self)构造方法封装对象 构造方法:__init__(self):在生成对象的时候会自动调用 例子 ...

  5. SVN merge(合并) 时看不到以前的已经合并过的记录的标识

    今天遇到这么一个事情,merge的时候以前merge过的提交记录,咩有已合并过的标识了,就是下面这样的尾巴分叉向下的箭头 通常出现这样的情况,都是工程路径不对,检查了一下,没有问题,这些meng B ...

  6. Ansible:playbook-nagios

    一.创建目录结构 cd /etc/ansible/roles/ mkdir nagios/{files,templates,vars,handlers,meta,default,tasks} -pv ...

  7. Ajax返回值一直获取不到啊

      原理: 同步异步的问题 Return 位置的问题     首先同步异步改为async : false,   Return 的值写在ajax外部  function submit_answer(){ ...

  8. PP: UMAP: uniform manifold approximation and projection for dimension reduction

    From Tutte institute for mathematics and computing Problem: dimension reduction Theoretical foundati ...

  9. 终极教程【zhong】

    just for a better future! 资源教程               aiim                   综合类 前端知识体系 前端知识结构 Web前端开发大系概览 We ...

  10. c数据结构 -- 链表的理解

    链表是结构体变量与结构体变量链接在一起,怎么链接在一起?通过指针 #include <stdio.h> struct Node{ int data; struct Node* next; ...