Symfony4で作業を開始し、サーバーを実行しようとすると、次のエラーが発生します:サービス「App\Controller\CharacterInformation」を自動接続できません:メソッドの引数「$ region」 __construct() "はタイプヒント付きの" string "であり、その値を明示的に構成する必要があります。
クラスをインスタンス化する方法:
/**
* @Route("/")
* @return Response
*/
function mainPage() {
$characterInformation = new CharacterInformation('eu');
return new Response($characterInformation->getCharacter());
}
CharacterInformationのコンストラクタ:
/**
* @var int
*/
public function __construct(string $region) {
$this->apiInformation = new ApiContent($region);
}
ApiContentのコンストラクタ:
public function __construct(string $region) {
$apiToken = new ApiToken($region);
$this->token = $apiToken->getToken();
$this->region = $apiToken->getRegion();
}
助けてくれてありがとう
自動配線情報をconfig/services.yamlに設定してみてください。お気に入り:
#app.myservice.config:
App\Controller\CharacterInformation:
arguments:
$region: "%region%"
すべての情報をチェックして サービスの依存関係を自動的に定義する(自動配線)