AngularJS-Google-Places没有返回详细信息

时间:2016-02-04 19:35:02

标签: javascript angularjs

我正在尝试使用angularjs-google-places获取Google地方详细信息,但我得到的只是一个空对象。我已经尝试过设置它,如文档中所示,但我仍然没有得到任何结果。这个codepen来自其他人,但显示我正在获得的内容。这是我的代码。

的index.html

           DataTable dt = GetDataTableFromDGV(dataGridView1);

        //foreach (DataColumn c in dt.Columns)
        //{
        //    MessageBox.Show(c.ColumnName);
        //}

        var groupedData = from b in dt.AsEnumerable()
                          group b by b.Field<int>("Column2") into g
                          select new
                          {
                              column2 = g.Key,
                              column13 = g.Sum(x => x.Field<decimal>("Column13"))
                          };

        foreach (var result in groupedData)
        {
            dataGridView2.Rows.Add(result);
        }

app.js

...
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places"></script>
<script src="bower_components/angularjs-google-places/dist/angularjs-google-places.min.js"></script>
...

restaurants.js

angular
  .module('cityApp', [
    'ngAnimate',
    'ngCookies',
    'ngResource',
    'ngRoute',
    'ngSanitize',
    'ngTouch',
    'ui.bootstrap',
    'mgcrea.ngStrap',
    'ngCordova',
    'ngGPlaces'
  ]) 

    ...

restaurants.html

angular.module('cityApp')
  .controller('RestaurantsCtrl', function ($scope, ngGPlacesAPI) {
    $scope.details = ngGPlacesAPI.placeDetails({reference:"ChIJ4yo36JUn5IgRXgiRD7KMDe0"}).then(function (data) {
      return data;
    });
  });

2 个答案:

答案 0 :(得分:2)

根据该代码栈,数据实际上是通过,因为如果你console.log()它,你可以看到数据。他们显示数据的方式是问题。回报不起作用。您必须设置$scope.details = data

答案 1 :(得分:0)

你的提法是错误的。 尝试一个好的,它会工作。

试试这个例子:

$scope.details = ngGPlacesAPI.placeDetails({reference:"CnRnAAAAnRm_imIW_SFd74bsj6iRwvRxBamZqtUaSyRjlb-i1vvkapOSVXyA5Dj452GSpBpno_MHbxyGsuFx9zqZvr_aa2a7uG0IZE8tC-N2OccvUC_i5N3QRQ11WmSRayo441riHebwQGqlbaf3RY-5KVsfGBIQXGtmUICHsD9LH2rd_y-J2hoUvW0lUEIHHtRnD15QyeUqi6tkHIg"}).then(function (data) {
    return data;
  });