[英]Google Maps lazy loading in angularjs with dynamic geo coordinate updates?
我創建了一個directive
用於使用angularjs
延遲加載google maps
:
http://plnkr.co/edit/1NpquJ?p=預覽
摘自: AngularJS-在多個地圖的指令中加載Google Map腳本異步
問題:如何將lat/long
值動態綁定到控制器,以便每次控制器中的值更改時,地圖也會更改視圖? (例如,后端調用提供了新的經/緯度值,然后必須將其推入map元素)。
我添加到maps指令:
scope: {
lat: '=',
long: '='
}
並用以下方式綁定它:
<div lat="{{lat}}" long="{{long}}" />
控制器:
$http..getBackendData()
.then(function(data) {
$scope.lat = data.lat;
$scope.long = data.long;
}
);
...
無論如何,地圖只會顯示初始值,而不會更新。 示例: http : //plnkr.co/edit/U31poBpHTfFVQsipLrI4?p = preview
現在,它可以在latitude
上添加$watch
:
http://plnkr.co/edit/eS18B0Te2l5qaf6wvQIH?p=preview
scope.$watch('lat', function (newVal) {
initializeMap();
});
但是我不知道這是否是正確的方法。 如果您有更好的解決方案,請隨時發表評論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.