In der neuesten Version von Discourse können Outlet-Argumente als Top-Level-Argumente für Ihre Connector-Komponenten aufgerufen werden.
In einer Vorlage bedeutet dies, dass @outletArgs.foo durch @foo ersetzt werden kann. In Glimmer Component JS kann this.args.outletArgs.foo durch this.args.foo ersetzt werden.
Das alte @outletArgs-Argument ist weiterhin verfügbar, und wir haben keine Pläne, es zu verwerfen. Es gibt also keinen Grund, bestehenden Code überstürzt zu aktualisieren. In Zukunft könnten wir eine benutzerdefinierte ESLint-Regel einführen, um die Verwendung von @outletArgs und this.args.outletArgs automatisch zu erkennen und zu modernisieren.
Der Plugin-Outlet-Inspektor wurde bereits aktualisiert, um Argumente auf moderne Weise anzuzeigen:
Es gibt zwei Möglichkeiten, eine Connector-Komponente in einem Plugin-Outlet zu rendern.
Eine besteht darin, Ihre Komponente in /connectors/{outlet-name}/my-connector.gjs (oder einer .js/.hbs-Kombination) zu platzieren. Die andere Möglichkeit besteht darin, Ihre Komponente woanders zu erstellen und api.renderInOutlet("{outlet-name}", MyConnectorComponent) aufzurufen.
In beiden Fällen werden die Outlet-Argumente an Ihre Komponente weitergegeben.