2017-05-31 3 views
2

を示しています人間が読める形式でしかし、値は各エントリに重複して表示されています。エポックを文字列に変換するために書いたコードは間違っていると思います。誰でも私の間違いを教えてもらえますか?重複する値は、私は日付を示していたのドロップダウンを持っている

+0

あなたは確認することができますか? – NKDev

+0

はい私は文字列で値を変換していないので、それはない –

+0

あなたがplunk scope.dates.forEachを作成することをお勧めします(機能(エントリ、インデックス){ scope.newDates.push(moment.unix(entry).format( 'YYYY-MM-DD')); }) – NKDev

答えて

1

重複した値を必要としない場合は、リストを作成する代わりにセットを作成できます。

scope.getDates = function() { 
    scope.newDates = new Set(); 
    ApiServices.getAllDates().then(
     function (response) { 
      scope.dates = response.data; 
       scope.dates.forEach(function (entry,index) {  
        entry = moment(entry, 'YYYY-MM-DD').format(); 
        scope.newDates.add(entry); 
     }); 
    if (scope.dates.length) { 
      scope.noRecords = false; 
    } else { 
      scope.noRecords = true; 
    } 
    }, 
    function (err) { 
     // Handle error here 
    console.log('Error' + JSON.stringify(err.data)); 
    }); 
    }; 
+0

上記のメソッドは機能しません。値は表示されません。 –

+0

@shreyagupta私は答えを更新し、それがあなたのために働いたかどうかを確認してください –

2

ここで私が試した解決策とその働きです。値は重複しません。 response.dataには重複がない場合

scope.getDates = function() { 
     scope.newDates = new Set(); 
     ApiServices.getAllDates().then(
      function (response) { 
       scope.dates = response.data; 
       scope.dates.forEach(function (entry,index) { 
        scope.newDates = scope.dates.map(function(entry){ 
         entry = moment(entry).format('YYYY-MM-DD'); 
          return entry; 
        }); 
       }); 
     if (scope.dates.length) { 
       scope.noRecords = false; 
     } else { 
       scope.noRecords = true; 
     } 
     }, 
     function (err) { 
      // Handle error here 
     console.log('Error' + JSON.stringify(err.data)); 
     }); 
     }; 
+0

これは良いアプローチだとは思わない。私はあなたの問題を理解すると信じています。サービスから取得した応答ペイロードを共有できますか?回答を追加します – Umair

+0

応答データは次のとおりです。 - [1493510400000,1494201600000,1496620800000] –

+0

回答を追加しました。確認してもいい。 – Umair

0
scope.getDates = function() { 
    $scope.humanizedDates = []; 
    ApiServices.getAllDates().then(
    function (response) { 
     if (response.data.length) { 
     $scope.humanizedDates = response.data.map(function(date){ 
      return moment(date).format('YYYY-MM-DD'); 
     }); 
     scope.noRecords = false; 
     } else { 
     scope.noRecords = true; 
     } 
    }, 
    function (err) { 
     // Handle error here 
     console.log('Error' + JSON.stringify(err.data)); 
    }); 
}; 
関連する問題