所以,我正在使用Open Layers 3和Ember.js制作一个仪表盘,我已经成功实现了地图的动态加载,但是当我离开这个路由时,我希望它能被销毁。我找到的唯一方法是map.destroy(),但它适用于旧版本的API,而在新版本中似乎没有这样的方法。
我在几次访问地图页面后使用Chrome调试器发现我有29个ol.Map对象。
目前我的代码如下:
App.MapView = Ember.View.extend({
map: null,
didInsertElement: function() {
this.map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
})
],
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 4
})
});
},
willDestroyElement: function() {
// destroy this.map
}
});
我在文档中找不到关于删除地图的任何内容。
提前感谢。
map.dispose()
呢? - arm