Openlayers 6.4.3:未捕获的TypeError:无法分配为只读字符串'bo'的属性'0'

问题描述

调整div对象的父Map的大小时,将导致以下堆栈跟踪。我正在尝试在ExtJS 6.2应用程序中使用Openlayers 6.4.3 dist

    transform.js:117 Uncaught TypeError: Cannot assign to read only property '0' of string 'bo'
        at Tt (transform.js:117)
        at e.getPixelFromCoordinateInternal (PluggableMap.js:744)
        at e.getPixelFromCoordinate (PluggableMap.js:730)
        at e.updatePixelPosition (Overlay.js:463)
        at e.render (Overlay.js:291)
        at e.dispatchEvent (Target.js:114)
        at e.renderFrame_ (PluggableMap.js:1174)
        at e.<anonymous> (PluggableMap.js:179)

以下是相关的Openlayers和ExtJS代码

create_simple_map: function () {
    var mapBox_sat = new ol.layer.Tile({
        type: 'base',visible: true,source: new ol.source.XYZ({
            url: 'https://api.mapBox.com/v4/mapBox.streets-satellite/{z}/{x}/{y}.png?access_token=mytoken'
        }),lyrControlOpt: {
            legendGroup: tr('base_layers','Base Layers','Base maps'),legendnodeid: 'mapBoxid_sat2',legendTitle: "MapBox Street Satellite",bBox: null
        }
    });
    var geometery = new ol.geom.Point(ol.proj.fromLonLat([-89.388446,30.336019]));
    var feature = new ol.Feature({
        geometry: geometery
    })

    var source = new ol.source.Vector({});
    var style = new ol.style.Style({
        image: new ol.style.Circle({
            fill: new ol.style.Fill({color: 'rgb(198,38,38)'}),stroke: new ol.style.stroke({color: 'rgb(198,radius: 5
        })
    });

    feature.setStyle(style);
    var overview_point_layer = new ol.layer.Vector({source: source});
    overview_point_layer.setZIndex(2000);

    var map = new ol.Map({
        layers: [
            mapBox_sat
        ],target: 'overview_map_id',view: new ol.View({
            // projection: 'epsg:4326',center: ol.proj.transform(
                [-88.793068,33.456929],'epsg:4326','epsg:3857'
            ),zoom: 5,rotation: 0
        }),controls: ol.control.defaults({
            attributionoptions: /** @type {olx.control.Attributionoptions} */ ({
                collapsible: true
            })
        })
    });
    source.addFeature(feature);

    return [map,feature,overview_point_layer]
}
Ext.define('MyApp.view.main.MyPanel',{
    
    afterrender: function () {
        // var overview_cont = Ext.getCmp('overview_map_id');
        var maps = create_simple_map();
        this.map = maps[0];
        var feature = maps[1];
        Utils.config.overview_map = this.map;
        Utils.config.overview_feature = feature;
        Utils.config.overview_point_layer = maps[2];
        this.map.setTarget(document.getElementById('overview_map_id'));

        Utils.config.overview_map_status = Utils.create_map_status(
            this.map);
    },resize: function () {
        this.map.updateSize();
    }
});

Openlayer 4中没有此错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)