OpenLayers-未捕获类型错误:无法读取属性';分区';未定义的
我试图用下面的代码在向量层上显示标记OpenLayers-未捕获类型错误:无法读取属性';分区';未定义的,openlayers,Openlayers,我试图用下面的代码在向量层上显示标记 var map; function init(){ map = new OpenLayers.Map('map_element',{}); var wms = new OpenLayers.Layer.WMS( 'OpenLayers WMS', 'http://vmap0.tiles.osgeo.org/wms/vmap0', {layers: 'basic'}, {}
var map;
function init(){
map = new OpenLayers.Map('map_element',{});
var wms = new OpenLayers.Layer.WMS(
'OpenLayers WMS',
'http://vmap0.tiles.osgeo.org/wms/vmap0',
{layers: 'basic'},
{}
);
map.addLayer(wms);
if (!map.getCenter())
{
map.zoomToMaxExtent();
}
var feature_data = {
"type": "FeatureCollection",
"features": [
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [-81, 42]}},
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [-82, 43]}},
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [-80, 41]}},
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [19, -24]}},
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [4, 42]}},
{"type": "Feature", "properties": {},
"geometry": {"type": "Point", "coordinates": [32, 35]}},
]
}
var format_geojson = new OpenLayers.Format.GeoJSON({});
var vector_strategies = [new OpenLayers.Strategy.Cluster({distance: 42})];
vector_layer = new OpenLayers.Layer.Vector('More Advanced VectorLayer', {strategies: vector_strategies});
var fLayer = vector_layer.addFeatures(format_geojson.read(feature_data));
map.addLayer(fLayer);
}
我能在各自的分区上看到地图,但缺少标记。在控制台中,我发现以下错误消息
Uncaught TypeError: Cannot read property 'div' of undefined
我哪里做错了?我是OpenLayers的新手,如果我犯了任何愚蠢的错误,我很抱歉,我不想使用群集策略,是否必须使用此策略,如果不是,我如何跳过群集策略
addFeatures
修改图层本身,不会返回新图层
这项工作:
vector_layer.addFeatures(format_geojson.read(feature_data));
map.addLayer(vector_layer);
代替
var fLayer = vector_layer.addFeatures(format_geojson.read(feature_data));
map.addLayer(fLayer);
例如: