2016-11-04 241 views
0

有没有人在最新的mapbox gl中运行以下错误?这发生在地图的setFilter时。Mapbox GL最新0.26.0无法读取未定义的属性'id'

VM5448:227 Uncaught TypeError: Cannot read property 'id' of undefined(…) 
t.setFilter @ mapbox-gl.js?6b34:formatted:6061 
e.setFilter @ mapbox-gl.js?6b34:formatted:10080 
(anonymous function) @ map.service.ts?33cd:135SafeSubscriber.__tryOrUnsub @ VM5448:223 
SafeSubscriber.next @ VM5448:172 
Subscriber._next @ VM5448:125 
Subscriber.next @ VM5448:89 
handler @ VM5521:126 
Evented.fire @ mapbox-gl.js?6b34:formatted:11031 
h @ mapbox-gl.js?6b34:formatted:8249 
u @ mapbox-gl.js?6b34:formatted:8213 
ZoneDelegate.invokeTask @ zone.js?fad3:265 
onInvokeTask @ core.umd.js?e2a5:6197ZoneDelegate.invokeTask @ zone.js?fad3:264 
Zone.runTask @ zone.js?fad3:154ZoneTask.invoke @ zone.js?fad3:335 

t.setFilter @ mapbox-gl.js 6b34:格式化:6061

  t.prototype.setFilter = function(e, t) { 
       this._checkLoaded(); 
       var r = this.getLayer(e); 
       return null !== t && this._validate(validateStyle.filter, "layers." + r.id + ".filter", t) ? this : util.deepEqual(r.filter, t) ? this : (r.filter = util.clone(t), 
       this._updateLayer(r)) 
      } 
+0

你能发布抛出错误的代码吗?即你正在调用'map.setFilter()'。 – mollymerp

+0

我的代码是类似的: https://www.mapbox.com/mapbox-gl-js/example/hover-styles/ 代码片段: 'Observable.fromEvent(this._map, “鼠标移动” ).subscribe( \t \t \t \t \t \t \t函数(X:MapMouseEvent){ \t \t \t \t \t \t \t \t设特征= this._map.queryRenderedFeatures(x.point,{层:[this._layerId]} ); \t \t \t \t \t \t \t \t如果(features.length){ \t \t \t \t \t \t \t \t \t this._map.setFilter(this._layerId,[ “所有”,[ “==”, “AAA”,特征[0] .properties.aaa],[“==”,“bbb”,“B”]]); \t \t \t \t \t \t \t \t}否则{ \t \t \t \t \t \t \t \t \t this._map.setFilter(this._layerId,[ “所有”,[ “==”, “AAA”, “”] ,[“==”,“bbb”,“B”]]); \t \t \t \t \t \t \t \t} \t \t \t \t \t \t \t} .bind(本));' –

回答

0

这被关闭。升级到0.28.0

相关问题