有没有办法在Mapbox Geocoder上覆盖结果事件?

时间:2018-05-02 16:20:37

标签: javascript jquery mapbox

我想在地图动画前往搜索位置之前做一些事情,所以我想知道是否有办法暂停该动画,或者是一种实现此目的的方法,这种延迟是行为准备的。< / p>

我试过了,但它没有按预期工作:

geocoder.on('result', function(ev) {
    console.log("result> ", ev);
    setTimeout(function(){
      console.log("release after 2 seconds");
    }, 2000); 
    //debugger
});

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我不认为Mapbox GL Geocoder插件提供了这种灵活性。正如您在source code中看到的那样,一旦检索到结果,它只会df = pd.DataFrame({ 'A_1': [1, 2, 3], 'A_2': [4, 5, 6], 'B_1': ['y', 'n', np.nan], 'B_2': ['n', np.nan, np.nan]}) _mask = df[['B_1', 'B_2']].notnull().values df[['A_1', 'A_2']] = df[['A_1','A_2']].where(_mask, other=999) A_1 A_2 0 1 4 1 2 999 2 999 999 到它的位置。

一个可能的(但是hacky)解决方案可能是使用movestartmap.stop()在动画开始时立即停止动画,然后手动重新启动动画。

但是你可能最好还是编写自己的地理编码器。使用Mapbox Geocoder Javascript SDK可以非常轻松。