Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
模型中未更新AngularJS标记坐标_Angularjs_Google Maps - Fatal编程技术网

模型中未更新AngularJS标记坐标

模型中未更新AngularJS标记坐标,angularjs,google-maps,Angularjs,Google Maps,我正在尝试角度贴图,我遇到了一个问题,这个问题涉及到获取贴图标记位置,并在标记移动时显示它。但移动标记时,标记模型未更新。我使用了官方示例,通过更改dragend事件解决了这个问题。我使用apply来更改标记坐标值 events: { dragend: function (marker, eventName, args) { $log.log('marker dragend'); $log.log(marker.getPosition().lat());

我正在尝试角度贴图,我遇到了一个问题,这个问题涉及到获取贴图标记位置,并在标记移动时显示它。但移动标记时,标记模型未更新。我使用了官方示例,通过更改dragend事件解决了这个问题。我使用apply来更改标记坐标值

events: {
    dragend: function (marker, eventName, args) {
        $log.log('marker dragend');
        $log.log(marker.getPosition().lat());
        $log.log(marker.getPosition().lng());
        $scope.$apply(function(){
            $scope.marker.coords.latitude = marker.getPosition().lat();
            $scope.marker.coords.longitude = marker.getPosition().lng();
        });
    }
}
可以看到完整的示例

但我对这种方法并不满意。是否有任何解决方案,我不需要将其放入此块来更新标记坐标

$scope.$apply(function(){
    $scope.marker.coords.latitude = marker.getPosition().lat();
    $scope.marker.coords.longitude = marker.getPosition().lng();
});

有两种方法可以将更新的数据发送到指令

$apply:如果要更新来自父控制器的数据,并且其他指令也使用相同的数据,请使用此命令。但是,在此函数之后,$digest将调用以更新局部变量。 $digest:如果要更新指令级范围变量,则可以直接调用此方法。