2017-01-05 5 views
0

JSON配列を取得しました。localstorageからロードしています。これはローカルストレージにアイテムを追加して戻したいものです。しかし、私は少し失われているとエラーがconcatは存在しないと言っている。JSONアイテムを既存の配列のanglejsにプッシュ

$scope.searchObj = { 
     term: searchTerm 
    }; 

    $scope.curObj = $scope.curObj.concat($scope.searchObj); 

    localStorage.setObject('searchObj', $scope.curObj); 

$ scope.curObjは、現在のようになります。

Object {term: "fs"} 

そして、それは

{"term":"fs","term":"searchterm"} 
+0

を使用することによって、私は、配列に変換後、両方の配列をマージして、オブジェクトに戻ってそれを変換します。 – avilac

+0

欠けているものがありますあなたはそれを配列に変換していませんプッシュ配列だけで動作します...単純なものがありません – Prasad

答えて

0
    のように見えるので、私はcurObjにして(searchObjで)検索語をプッシュしたいのですが
  1. ngStorageを使用して、ローカルストレージにオブジェクトを格納し、サービスを使用します。$localStorage -

1

$scope.searchObjをマージするReference

  • 使用angular.extend(oldobject、NEWOBJECT)は、アレイが、JSONオブジェクトではありません。

    実際には2つのオブジェクトをマージします。あなたはプレーンなJSで使用することができます。

    for (var attrname in $scope.curObj) { 
         $scope.searchObj[attrname] = $scope.curObj[attrname]; 
        } 
    

    それともangular extend

    $scope.searchObj = angular.extend($scope.searchObj, $scope.curObj); 
    
  • +1

    将来のユーザーのために: 'angular.extend'は再帰的ディープコピーをサポートしていません - ' angular.merge'をそれ。 – mhodges

    関連する問題