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 ng对话框_Angularjs_Google Maps_Fitbounds_Ng Dialog - Fatal编程技术网

谷歌地图不使用angularjs ng对话框

谷歌地图不使用angularjs ng对话框,angularjs,google-maps,fitbounds,ng-dialog,Angularjs,Google Maps,Fitbounds,Ng Dialog,我正在使用angularjs模块进行车辆行程视图地图。我的行程地图angularjs指令工作正常,地图在完整窗口(不在ng对话框模型弹出窗口中)中加载了fitbounds,但在ng对话框弹出窗口中不工作 在ng对话框中,将加载Google地图,但地图不在边界内 早些时候,我认为这个问题是由于谷歌地图Fitbood无法正常工作,所以我发布了下面的问题。你可以在这里找到我努力的更多细节 ng对话框调用控制器中的代码: ngDialog.open({ template: 'Vi

我正在使用angularjs模块进行车辆行程视图地图。我的行程地图angularjs指令工作正常,地图在完整窗口(不在ng对话框模型弹出窗口中)中加载了fitbounds,但在ng对话框弹出窗口中不工作

在ng对话框中,将加载Google地图,但地图不在边界内

早些时候,我认为这个问题是由于谷歌地图Fitbood无法正常工作,所以我发布了下面的问题。你可以在这里找到我努力的更多细节


ng对话框调用控制器中的代码:

    ngDialog.open({
       template: 'Views/Main/tripdetail.html',
       className: 'ngdialog-theme-plain',
       controller: 'tripdetailController',
       scope: $scope
    });
    var marker;
    var tripmap = mapService.getTripMap();
    var bounds = new google.maps.LatLngBounds();
    for (var j = 0; j < trips.length; j++) {
        var ltlng = new google.maps.LatLng(trips[j].lat, trips[j].lng);
        bounds.extend(ltlng);
        //   if (j == 0 || j == trips.length - 1) {
        marker = new google.maps.Marker({
            position: ltlng,
            map: tripmap
        });
        //  }
    }
    $scope.Bounds = bounds;
    tripmap.fitBounds(bounds);
映射绑定代码:

    ngDialog.open({
       template: 'Views/Main/tripdetail.html',
       className: 'ngdialog-theme-plain',
       controller: 'tripdetailController',
       scope: $scope
    });
    var marker;
    var tripmap = mapService.getTripMap();
    var bounds = new google.maps.LatLngBounds();
    for (var j = 0; j < trips.length; j++) {
        var ltlng = new google.maps.LatLng(trips[j].lat, trips[j].lng);
        bounds.extend(ltlng);
        //   if (j == 0 || j == trips.length - 1) {
        marker = new google.maps.Marker({
            position: ltlng,
            map: tripmap
        });
        //  }
    }
    $scope.Bounds = bounds;
    tripmap.fitBounds(bounds);
var标记;
var tripmap=mapService.getTripMap();
var bounds=new google.maps.LatLngBounds();
对于(var j=0;j

在窗口中,它看起来很好:

    ngDialog.open({
       template: 'Views/Main/tripdetail.html',
       className: 'ngdialog-theme-plain',
       controller: 'tripdetailController',
       scope: $scope
    });
    var marker;
    var tripmap = mapService.getTripMap();
    var bounds = new google.maps.LatLngBounds();
    for (var j = 0; j < trips.length; j++) {
        var ltlng = new google.maps.LatLng(trips[j].lat, trips[j].lng);
        bounds.extend(ltlng);
        //   if (j == 0 || j == trips.length - 1) {
        marker = new google.maps.Marker({
            position: ltlng,
            map: tripmap
        });
        //  }
    }
    $scope.Bounds = bounds;
    tripmap.fitBounds(bounds);

在ng对话框模式弹出窗口中,它移动到左上角,如下所示:

    ngDialog.open({
       template: 'Views/Main/tripdetail.html',
       className: 'ngdialog-theme-plain',
       controller: 'tripdetailController',
       scope: $scope
    });
    var marker;
    var tripmap = mapService.getTripMap();
    var bounds = new google.maps.LatLngBounds();
    for (var j = 0; j < trips.length; j++) {
        var ltlng = new google.maps.LatLng(trips[j].lat, trips[j].lng);
        bounds.extend(ltlng);
        //   if (j == 0 || j == trips.length - 1) {
        marker = new google.maps.Marker({
            position: ltlng,
            map: tripmap
        });
        //  }
    }
    $scope.Bounds = bounds;
    tripmap.fitBounds(bounds);


请告诉我解决办法。这将是可观的。

这是由于地图的大小是由ngDialog弹出指令调整的

通过使用as在映射调整大小回调中调用fitbounds解决

           $scope.$apply(function () {
                window.setTimeout(function () {
                google.maps.event.trigger(tripmap, 'resize');
                    tripmap.fitBounds(bounds);
                }, 100);
            });

谢谢大家的帮助。

这是因为地图的大小是由ngDialog弹出指令调整的

通过使用as在映射调整大小回调中调用fitbounds解决

           $scope.$apply(function () {
                window.setTimeout(function () {
                google.maps.event.trigger(tripmap, 'resize');
                    tripmap.fitBounds(bounds);
                }, 100);
            });

谢谢大家的帮助。

这是因为地图的大小是由ngDialog弹出指令调整的

通过使用as在映射调整大小回调中调用fitbounds解决

           $scope.$apply(function () {
                window.setTimeout(function () {
                google.maps.event.trigger(tripmap, 'resize');
                    tripmap.fitBounds(bounds);
                }, 100);
            });

谢谢大家的帮助。

这是因为地图的大小是由ngDialog弹出指令调整的

通过使用as在映射调整大小回调中调用fitbounds解决

           $scope.$apply(function () {
                window.setTimeout(function () {
                google.maps.event.trigger(tripmap, 'resize');
                    tripmap.fitBounds(bounds);
                }, 100);
            });


谢谢大家的帮助。

尝试在对话框打开回调中使用“贴图调整大小”方法。任何时候地图被隐藏,它都无法计算尺寸。我在控制器中使用了“地图调整大小”触发器。请看。对不起,我在指令中做了映射调整触发器的大小。但那个';这是一个不同的问题,在这个问题中没有显示调整大小,你问的是如何修复它。在相同的开放式回拨中,也可能需要进行回拨以适应边界@查利特夫。我在控制器中的同一个调整大小触发器中调用了fitbounds。工作正常..再次感谢。请尝试在对话框打开回调中使用“贴图调整大小”方法。任何时候地图被隐藏,它都无法计算尺寸。我在控制器中使用了“地图调整大小”触发器。请看。对不起,我在指令中做了映射调整触发器的大小。但那个';这是一个不同的问题,在这个问题中没有显示调整大小,你问的是如何修复它。在相同的开放式回拨中,也可能需要进行回拨以适应边界@查利特夫。我在控制器中的同一个调整大小触发器中调用了fitbounds。工作正常..再次感谢。请尝试在对话框打开回调中使用“贴图调整大小”方法。任何时候地图被隐藏,它都无法计算尺寸。我在控制器中使用了“地图调整大小”触发器。请看。对不起,我在指令中做了映射调整触发器的大小。但那个';这是一个不同的问题,在这个问题中没有显示调整大小,你问的是如何修复它。在相同的开放式回拨中,也可能需要进行回拨以适应边界@查利特夫。我在控制器中的同一个调整大小触发器中调用了fitbounds。工作正常..再次感谢。请尝试在对话框打开回调中使用“贴图调整大小”方法。任何时候地图被隐藏,它都无法计算尺寸。我在控制器中使用了“地图调整大小”触发器。请看。对不起,我在指令中做了映射调整触发器的大小。但那个';这是一个不同的问题,在这个问题中没有显示调整大小,你问的是如何修复它。在相同的开放式回拨中,也可能需要进行回拨以适应边界@查利特夫。我在控制器中的同一个调整大小触发器中调用了fitbounds。工作很好,再次感谢。