Předání parametru do generované továrničky

Polki
Člen | 553
+
0
-

Čau lidi.

jde nějak přes generovanou továrničku nastavit, aby jsem do komponenty mohl poslat řetězec jako parametr?

tedy:
config.neon

parameters:
	myParameter: 'somestring'

services:
	- App\Components\AnotherComponentFactory
	- App\Components\ComponentFactory(%myParameter%)

generovaná továrna

interface ComponentFactory
{
    public function create(): Component;
}

komponenta

class Component
{
	public function __construct(
        private AnotherComponentFactory $acf,
        private string $parameterFromConfig,		// Tento sem potřebuju dostat. Tedy mělo by se do něj předat 'somestring'
    ) {}
}
Marek Bartoš
Nette Blogger | 1260
+
0
-

App\Components\ComponentFactory(..., %myParameter%) nebo App\Components\ComponentFactory(parameterFromConfig: %myParameter%) nefunguje?

Polki
Člen | 553
+
+1
-

Service of type App\Components\ComponentFactory: Class somestring not found.

Bohužel háže to tuto chybu
už jsem na to ale asi přišel. Zatím vypadá, že mi funguje tento zápis: (ještě musím pořádně otestovat)

services:
	-
		implement: App\Components\ComponentFactory
		arguments: [parameterFromConfig: %myParameter%]

Editoval Polki (21. 6. 2021 18:51)