Die angleJS $ resource isArray-Eigenschaft verstanden

8

Ich lerne den $ ressource-Service von angular und im eckigen Tutorial wird eine benutzerdefinierte Aktion hinzugefügt (Abfrage) Die Methode wird auf 'get' gesetzt und isArray wird auf 'true

gesetzt %Vor%

Wenn Sie sich jedoch die Dokumente für $ resource ansehen, hat die Aktion "query" bereits Die Methode ist auf 'get' gesetzt und isArray ist bereits auf voreingestellt gesetzt. So dachte ich, dass ich diese Eigenschaften einfach verlassen kann.

Dies funktioniert für die Methode Eigenschaft, aber es stellt sich heraus, dass wenn ich die Eigenschaft isArray weglasse, bekomme ich diesen Fehler:

  

Fehler: [$ resource: badcfg] Fehler in der Ressourcenkonfiguration für die Aktion   %Code%. Erwartete Antwort, um ein Objekt zu enthalten, aber ein Array erhalten

Warum ist das so?

    
kevinius 13.02.2015, 11:29
quelle

1 Antwort

16

Ich denke, Sie haben die Dokumentation falsch verstanden.

Standardmäßig werden folgende Aktionen unterstützt, ohne benutzerdefinierte Aktionen hinzuzufügen:

%Vor%

Daher erwartet die query -Aktion standardmäßig, dass ein Array zurückgegeben wird, was sinnvoll ist, da eine Abfrage im Allgemeinen ein Array von Elementen zurückgibt.

Also wenn du folgendes verwendest:

%Vor%

Sie können dann eine Abfrage wie folgt durchführen:

%Vor%

Wenn Sie nun eine benutzerdefinierte Aktion hinzufügen möchten, lautet der Standardwert für isArray false so:

%Vor%

müsste ein Objekt zurückgeben. Wenn ein Array zurückgegeben wurde, müsste isArray auf true wie folgt gesetzt werden:

%Vor%     
Wayne Ellery 13.02.2015, 12:20
quelle

Tags und Links