Ionic:ng-click list call-log然后显示详细日志

时间:2016-01-07 10:57:34

标签: javascript angularjs ionic-framework ionic

所以我的呼叫日志只显示姓名和日期。 现在我想显示该日志的详细信息(号码,持续时间和呼叫类型),这意味着我应该单击一个呼叫日志列表。但问题是我没有ID来获取该日志的详细信息,因为呼叫日志的数据来自我的手机。

有人知道如何获取我的问题的详细信息吗?或者有人对我的问题有意见? 告诉我〜

谢谢:)

- 首先,当我单击调用日志菜单时,它显示详细信息,但现在我的老板想要将详细信息分开,所以我的代码在此之前:

这是我的通话记录的HTML代码

<ion-view class="h6" title="Debug" ng-controller="DebugCtrl">
<ion-content class="has-header">
    <div class="list">
      <div class="item item-divider">
        <i class="icon ion-ios-telephone"></i> Last Call
      </div>
    </div>
    <div ng-repeat="lcall in data.lastCall">
    <div class="list" style="font-family:calibri;">
        <div class="row" style="font-family:calibri;">
            <div class="col col-30 col-offset-10">Name</div>
            <div class="col">{{lcall.cachedName}}</div>
        </div><br>
        <div class="row">
            <div class="col col-30 col-offset-10">Number</div>
            <div class="col">{{lcall.number}}</div>
        </div><br>
        <div class="row">
            <div class="col col-30 col-offset-10">Type</div>
            <div class="col">{{callTypeDisplay(lcall.type)}}</div>
        </div><br>
        <div class="row">
            <div class="col col-30 col-offset-10">Date</div>
            <div class="col">{{lcall.date | date}} {{lcall.date | date : 'HH:mm'}} <!-- {{data.lastCall.date}} --></div>
        </div><br>
        <div class="row">
            <div class="col col-30 col-offset-10">Duration</div>
            <div class="col">{{lcall.duration}} seconds</div>
        </div><br>
        <div class="row">
            <div class="col col-30 col-offset-10">Acknowledged</div>
            <div class="col">{{(lcall.new == 1 ? 'yes' : 'no')}}</div>
        </div>
        <hr>
    </div>
    </div>
</ion-content>

这里是我的呼叫记录控制器代码

.controller('DebugCtrl', ['$scope', 'CallLogService', '$timeout', '$ionicLoading','$state',function ($scope, CallLogService, $timeout, $ionicLoading,$state) {
$scope.showLoading = function(){
  $ionicLoading.show({
    content: 'Loading',
    animation: 'fade-in',
    showBackdrop: true,
    maxWidth: 200,
    showDelay: 0
  });

  $timeout(function () {
  //Loading di sembunyikan
  $ionicLoading.hide();
  //Buat di looping coeg
  $state.go('tab.log');
  $scope.data = {};
    console.log('data : ' , $scope.data);
    $scope.callTypeDisplay = function(type) {
      switch(type) {
        case 1:
          return 'Incoming';
        case 2:
          return 'Outgoing';
        case 3:
          return 'Missed';
        default:
          return 'Unknown';
      }
    };
    CallLogService.list(1000).then(
    function(callLog) {
        console.log(callLog);
        //alert('no of call: ',$scope.data.lastCall.length);
        $scope.data.lastCall = callLog;
    },
    function(error) {
        console.error(error);
    });
  }, 2000);
};}])

1 个答案:

答案 0 :(得分:0)

要解决没有ID来识别单击哪个呼叫记录的问题,ng-repeat会显示$index属性。 $ index是重复元素的迭代器偏移量。

您可以将$index传递给您的某个控制器方法。

e.g。

<div ng-repeat="lcall in data.lastCall"> <div ng-click="controllerFunc($index)">some call log data here</div> </div>