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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.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_Cordova_Ionic Framework - Fatal编程技术网

Angularjs 谷歌地图不显示

Angularjs 谷歌地图不显示,angularjs,google-maps,cordova,ionic-framework,Angularjs,Google Maps,Cordova,Ionic Framework,我试图在我的混合应用程序中包括谷歌地图,但我遇到了一个问题,即该功能正在运行,但谷歌地图没有显示出来 search.html 这是要显示地图的页面,这里显示了共享位置选项,但在共享之后,它不会显示该页面 controllers.js 这是定义的控制器部分,GpsCtrl用于映射。该页面正在打开并请求浏览器上的位置权限,但随后它没有显示地图 angular.module('starter.controllers', ['angular-datepicker']) .controller('Mai

我试图在我的混合应用程序中包括谷歌地图,但我遇到了一个问题,即该功能正在运行,但谷歌地图没有显示出来

search.html 这是要显示地图的页面,这里显示了共享位置选项,但在共享之后,它不会显示该页面

controllers.js 这是定义的控制器部分,GpsCtrl用于映射。该页面正在打开并请求浏览器上的位置权限,但随后它没有显示地图

angular.module('starter.controllers', ['angular-datepicker'])
.controller('MainCtrl', function($scope) {

})
.controller('GpsCtrl', function($scope) {

    ionic.Platform.ready(function() {
        var myLatlng = new google.maps.LatLng(12.96,77.65);

        var mapOptions = {
            center: myLatlng,
            zoom: 16,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };

        var map = new google.maps.Map(document.getElementById("map"), mapOptions);

        navigator.geolocation.getCurrentPosition(function(pos) {
            map.setCenter(new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude));
            var myLocation = new google.maps.Marker({
                position: new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude),
                map: map,
                title: "My Location"
            });
        });

        $scope.map = map;
    });

});
menu.html 这是侧菜单的文件

<ion-side-menus enable-menu-with-back-views="false">
  <ion-side-menu-content>
    <ion-nav-bar class="bar-stable">
      <ion-nav-back-button>
      </ion-nav-back-button>

      <ion-nav-buttons side="left">
        <button class="button button-icon button-clear ion-navicon" menu-toggle="left">
        </button>
      </ion-nav-buttons>
    </ion-nav-bar>
    <ion-nav-view name="menuContent"></ion-nav-view>
  </ion-side-menu-content>

  <ion-side-menu side="left">
    <ion-header-bar class="bar-stable">
      <h1 class="title">Left</h1>
    </ion-header-bar>
    <ion-content>
      <ion-list>
        <ion-item nav-clear menu-close ng-click="login()">
          Login
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/connect">
          Search
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/registration">
          Browse
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/main">
          Main
        </ion-item>
        <ion-item nav-clear menu-close href="#/app/resu">
          Result
        </ion-item>

      </ion-list>
    </ion-content>
  </ion-side-menu>
</ion-side-menus>

左边
登录
搜寻
浏览
主要
结果

您在谷歌地图调用中缺少
http://

可以这样称呼:

<script src="http://maps.googleapis.com/maps/api/js"></script>

您是否检查了app.js中的run方法。确保您有starter.controllers,如此处所述

angular.module('starter',['ionic','starter.controllers'])  <== add controller here
.run(function($ionicPlatform) {......................

angular.module('starter',['ionic','starter.controllers'])var选项={timeout:10000,enableHighAccurance:true}

$cordovaGeolocation.getCurrentPosition(options).then(function (position) {

    var latLng = new google.maps.LatLng(12.32719230000002, 76.73288185390626);

    var mapOptions = {
        center: latLng,
        zoom: 10,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };

    $scope.map = new google.maps.Map(document.getElementById("map"), mapOptions);
    google.maps.event.addListenerOnce($scope.map, 'idle', function () {

        var marker = new google.maps.Marker({
            map: $scope.map,
            animation: google.maps.Animation.DROP,
            position: latLng
        });

        var infoWindow = new google.maps.InfoWindow({
            content: "Here I am!"
        });

        google.maps.event.addListener(marker, 'click', function () {
            infoWindow.open($scope.map, marker);
        });

    });
}, function (error) {
    console.log("Could not get location");
});

在index.html中,您的谷歌地图脚本是add http:in src。@Banik它仍然显示相同的问题我能够解决它,但它没有显示在android设备上。此外,它也无助于在控制器中尝试此方法请解释您的答案
<script src="http://maps.googleapis.com/maps/api/js"></script>
angular.module('starter',['ionic','starter.controllers'])  <== add controller here
.run(function($ionicPlatform) {......................
$cordovaGeolocation.getCurrentPosition(options).then(function (position) {

    var latLng = new google.maps.LatLng(12.32719230000002, 76.73288185390626);

    var mapOptions = {
        center: latLng,
        zoom: 10,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };

    $scope.map = new google.maps.Map(document.getElementById("map"), mapOptions);
    google.maps.event.addListenerOnce($scope.map, 'idle', function () {

        var marker = new google.maps.Marker({
            map: $scope.map,
            animation: google.maps.Animation.DROP,
            position: latLng
        });

        var infoWindow = new google.maps.InfoWindow({
            content: "Here I am!"
        });

        google.maps.event.addListener(marker, 'click', function () {
            infoWindow.open($scope.map, marker);
        });

    });
}, function (error) {
    console.log("Could not get location");
});