Ich frage mich, wie @ Annotation in Play-Scala funktioniert. Es bringt offensichtlich eine Abhängigkeit, aber ich bin neugierig, wie es funktioniert. Wenn ich es auf Klassenerweiterungssteuerpult verwendete und routes Generator zu injecoutesgenerator einstellte, scheint es, Gegenstände von diesen Klassen autmatisch zu verursachen, aber wie benutze ich es in anderem Kontext?
Ich habe es versucht:
%Vor%Aber das scheint nicht zu funktionieren. Gibt es irgendwelche Möglichkeiten @ Dinge (das mailerClient, WS usw.) direkt auf einen Wert, nicht auf die Controller-Klasse zu setzen?
Sieht eng aus. Ändern Sie val
in var
, weil es nicht final ist und zu einem späteren Zeitpunkt injiziert werden muss.
Ich würde auch überprüfen, dass die MailerClient
-Bibliothek als eine Abhängigkeit in der Projektkonfiguration erwähnt wird. Sie könnten stattdessen mit WSClient
versuchen, da es standardmäßig in der Vorlage enthalten ist:
Besonders, weil ich weiß, dass dieses besondere funktioniert.
Es wurde eine Demo auf GitHub erstellt, bei der es sich um die Play-Scala
Vorlage mit der index
Methode handelt wie folgt:
Tags und Links scala dependency-injection playframework playframework-2.0