2015-01-10 9 views
6

Ich beginne AngularJS $ Ressource zu lernen, und bemerkte, dass das $ Ressourcenobjekt einige Methoden (siehe unten für Beispiele) an meine vom Server heruntergeladenen Daten angehängt hat. Wie entferne ich diese Methoden und konvertiere das Objekt in ein reguläres (Array-) Objekt?

__proto__: Resource $delete: function (params, success, error) {$get: function (params, success, error) {$query: function (params, success, error) {$remove: function (params, success, error) {$save: function (params, success, error) {constructor: function Resource(value) {toJSON: function() {__proto__: Object 

Zum Beispiel, ich versuche, eine POST-Anforderung einschließlich einiger Schlüsselwertdaten resource.save mit $ zu senden, aber diesem ‚Proto‘ Elemente im Array verursachen irgendwie die Daten „nicht definiert werden "wenn in der Fabrik an $ .param (Daten) übergeben wird. Ich könnte das gleiche mit $ http mit Leichtigkeit tun, aber wollen $ Ressource lernen. Vielen Dank!

Innerhalb eines Controllers

$scope.ok = function() { 
     $scope.entry = new calEntry(); 
     $scope.entry.data = data // data is $resource object including _proto_ items 
     $scope.entry.$save(function(){ 
      toaster.pop('success','Message','Update successfully completed.'); 
     }); 
    }; 

Fabrik

myApp.factory("calEntry",['$resource','$filter', function($resource, $filter) { 

    return $resource("/griddata/", {}, { 
     save: { 
      method: 'POST', 
      headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}, 
      transformRequest: function(data, headersGetter) { 
       return $.param(data);  // data is undefined when it reaches here 
      } 
     } 
    }); 
}]); 

Antwort

8

Versuchen Sie, die toJSON Funktion, werden die Daten holen und die zusätzlichen Eigenschaften entfernen.

+0

Vielen Dank für Ihre Antwort. Ich habe versucht, $ scope.entry.data = data.toJSON() zu ändern, aber die _proto_-Eigenschaften sind immer noch da. Fehle ich etwas? –

+0

angular.toJson (data) löscht die Eigenschaften und gibt eine einfache JSON-Zeichenfolge zurück. Vielen Dank. –

Verwandte Themen