2016-03-29 5 views
1

Ziemlich allgemeine Frage hier. In meinem Code zu tun habe ich häufig mit Modellen:Ember.js - wie man ein Modell loggt

let model = this.currentModel; 

die zu funktionieren scheint, aber wenn ich

console.log(model); 

Ich sehe diesen nutzlosen Code in der Konsole:

<[email protected]:bizinfo::ember904:null> 

Does weiß jemand, wie man den Inhalt des Modells tatsächlich als Objekt protokolliert? Außerdem kann ich überall über die Bedeutung dieses Tags lesen?

Antwort

7

Kann jemand den Inhalt des Modells als Objekt tatsächlich protokollieren?

Die Ember Datenmodelle haben eine toJSON Methode, die die relevanten Daten für Sie Auszüge:

console.log(model.toJSON()); 

Diese Methode dient der JSONSerializer verwendet die JSON Darstellung zu erstellen.

Wenn Sie die Daten in einer App-spezifischen Art und Weise anmelden möchten, können Sie serialize verwenden:

model.serialize(); 

, die die Serialisierung Strategie, die Sie in das Geschäft der Adapter definiert verwendet eine JSON Darstellung des Modells zu erstellen .

Auch überall kann ich über die Bedeutung dieses Tags lesen?

Alle Objekte in einer Ember app, darunter Modelle Ember Daten, erben von Ember.CoreObject, die eine toString Methode, die diese Darstellung druckt hat.

<[email protected]:bizinfo::ember904:null> 

bedeutet:

  • lc-dash ist Ihre App-Name
  • model wird die glut Typ des Objekts, das Sie Protokollierung (Controller sein kann, route etc.)
  • bizinfo ist der Name des Objekts, das Sie protokollieren (Name Ihres Modells oder Controllers oder Route usw.)
  • ember904 ist eine Guid erstellen mit Ember.guidFor
  • null ist die ID des Modells.

Zum Vergleich Beispiel mit der Methode toStringExtension in Ihrem Modell Sie können diesen Wert überschreiben, ist hier, wie Ihre Anwendung Controller Protokollierung aussehen:

<[email protected]:application::ember324> 
+0

Vielen Dank für die hilfreiche Antwort nem - fühlt sich gut an! –

+0

Kein Problem, froh zu helfen :) – nem035

Verwandte Themen