初始化一个地图,必不可少的三要素。target,view,layers。source Layer 是 的重要组成部分。如果没有数据源你就不能渲染处地图的底图,也就没有任何含义
addfeature,当一个要素添加到 source 中触发;
removefeature,当要素移除时候发生;
changefeature,当要素变化时触发;
clear,当 source 的 clear 方法调用时候触发;
/**
* @typedef {{attributions: (Array.<ol.Attribution>|undefined),
* features: (Array.<ol.Feature>|undefined),
* format: (ol.format.Feature|undefined),
* loader: (ol.FeatureLoader|undefined),
* logo: (string|olx.LogoOptions|undefined),
* strategy: (ol.LoadingStrategy|undefined),
* url: (string|undefined),
* wrapX: (boolean|undefined)}}
* @api
*/
features 方法实现
import areaGeo from "@/geoJson/china.json";
var vectorSource = new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(areaGeo )
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource,
style: style
});
map.addLayer(vectorLayer);
url + format 方法实现
var vectorLayer = new ol.layer.Vector({
source: new ol.source.Vector({
url: '../geoJson/china.json',
format: new ol.format.GeoJSON()
})
});
这两种方法中都会指定数据来源格式, 矢量数据源支持的格式包含很多gml、EsriJSON、geojson、gpx、igc、kml、osmxml、ows、polyline、topojson、wfs、wkt、wms capabilities(兼容 wms 的格式)、 wms getfeatureinfo、 wmts capabilities、xlink、xsd:等格式。这些格式都有readFeatures、readFeature和readGeometry方法用于读取数据。