在控制器中,我想在页面上获取地图(Google),将地图 ID 设置为变量,然后在同一控制器中的其他位置使用该地图 ID。
我有一个这样的片段;
var map;
NgMap.getMap({ id: 'mainMap' }).then(function (evtMap) {
map = evtMap;
});
// Bind products to map
vm.products.$promise.then(function (data) {
angular.forEach(data, function (child) {
// add markers to map
});
});
但是因为 NgMap 需要一点时间来加载,所以当下面的代码准备好时它还没有准备好,因此 map 是未定义的。一旦我们在地图中有有效数据,我如何确保下面的代码仅在运行?所以就像我正在使用的承诺一样,我猜,但是以不同的方式?