Ember Simple Auth - injiziert den aktuellen Benutzer in jede Route

8

Ich baue eine Website mit Ember Simple Auth.

Ich folgte diesen Anweisungen , um zu versuchen, das aktuelle Benutzerobjekt hinzuzufügen zu der Sitzung und es funktionierte, mit diesem leicht angepassten Code:

%Vor%

Aber mit der neuesten Version von Ember bekomme ich Folgendes:

  

DEPRECATION: lookup wurde in einer Registry aufgerufen. Die initializer API empfängt keinen Container mehr und Sie sollten ein instanceInitializer verwenden, um Objekte aus dem Container nachzuschlagen. Weitere Informationen finden Sie unter Ссылка .

Ich weiß, dass ich das oben genannte in / app / initializers und / app / instance-initializers (gemäß den Anmerkungen hier ), aber ich bin nicht ganz sicher, wie ich das anstellen soll.

Wenn es natürlich eine einfachere / sauberere Möglichkeit gibt, die Benutzer- und Kontoobjekte für jede Route / Vorlage verfügbar zu machen, würde ich sie gerne hören:)

Danke

    
Joe Czucha 16.06.2015, 16:01
quelle

3 Antworten

9

Dies funktioniert bei mir:

  • ember-cli: 0.2.7 (ember: 1.12.0, Glutendaten: 1.0.0-beta.18)
  • ember-cli-einfach-auth: 0.8.0-beta.3

Hinweis:

  • Glutendaten: 1.13. Store wird in einem Initialisierer registriert, sollte so funktionieren wie
  • ember-data: 1.0.0-beta.19. Store wird in einem Instanz-Initialisierer registriert, einige Anpassungen sind erforderlich

1) Anpassen der Sitzung

%Vor%

2) Speichere den Speicher in die Sitzung durch den Initialisierer (andernfalls würde find () nicht funktionieren)

%Vor%

3) In Vorlage

%Vor%

Hinweis: Dies entbindet Sie nicht von den von ember-simple-auth selbst erzeugten Abwertungen.

    
artych 17.06.2015, 14:10
quelle
5

Zunächst sollten Sie die Sitzung nicht erneut öffnen, sondern stattdessen eine benutzerdefinierte Sitzung verwenden (siehe folgendes Beispiel: Ссылка ). Außerdem sollten Sie nicht nur den aktuellen Benutzer laden, wenn das Zugriffstoken gesetzt ist, sondern auch wenn die Sitzung authentifiziert wird ( 'session.get('isAuthenticated')' ), wodurch Ihr Code nicht vom Authentifikator abhängig ist.

Die Verwarnungen bezüglich der Verwendung der Registry im Initialisierer werden hoffentlich in ESA 0.9.0 verschwinden.

    
marcoow 17.06.2015 06:52
quelle
2

Hier ist ein Vorher und Nachher eines Initialisierers / Instanzinitialisierers, den ich neulich gemacht habe.

Vorher

%Vor%

Nach

%Vor%

Ember Data Stuff

Ember Daten in den letzten Iterationen sollten mit store:application

abgerufen werden %Vor%     
Kingpin2k 16.06.2015 17:12
quelle