DButton unterstützt @action nicht mehr als String. Bitte refaktorieren Sie, um stattdessen eine Closure-Aktion zu verwenden

Ich verwende ein Theme, das auf dem Feverbee-Theme basiert und seit mehreren Jahren im Einsatz ist. Benutzer haben sich gemeldet, da sie keine neuen Themen mehr erstellen können. Die obige Fehlermeldung wird in der Konsole angezeigt.

Wo kann ich herausfinden, wie ich den Vorlagencode anpassen muss, um dieses Deprecation-Problem zu beheben? Ich habe die Foren durchsucht, um herauszufinden, wie der d-button-Code geändert werden sollte, aber nichts Relevantes gefunden.

Detaillierte Informationen zu modernen Ember-Aktionen finden Sie hier: Component State and Actions - Components - Ember Guides

Im Wesentlichen bedeutet die Meldung, die Sie sehen, dass Sie etwas ändern müssen, wie zum Beispiel

{{d-button action="blah"}}

zu etwas wie:

{{d-button action=(action "blah")}}

Wenn Sie einen Link oder einen Codeausschnitt Ihres Codes teilen können, können wir Ihnen sicher mit spezifischeren Anweisungen helfen.

7 „Gefällt mir“

Fantastisch, danke @david, das hat mir geholfen. Gibt es irgendwo, wo ich in Zukunft nach solchen Informationen suchen kann?

1 „Gefällt mir“

In diesem Fall sollte die Fehlermeldung, die Sie gesehen haben, genügend Informationen zur Behebung des Problems liefern, aber das war offensichtlich nicht der Fall. Wir werden dies bei zukünftigen Änderungen berücksichtigen und versuchen, präzisere Anweisungen zu geben. Vielen Dank, dass Sie das Problem gemeldet haben, @pw3010

3 „Gefällt mir“

Sie können auch nach Beispielen für Best Practices im Kerncode auf GitHub von Discourse suchen.

2 „Gefällt mir“

Es ist ein Hinweis, aber die Seite, die Sie verlinkt haben, enthält nicht das Wort „closure“. Es ist, als ob man JavaScript tatsächlich kennen und verstehen müsste oder so. Vielleicht ein Link zu einer Seite, die es erklärt, so wie Sie es getan haben? Man könnte fast etwas wie „change action=‘x’ to action=(action ‘x’)“ einfügen.

Ich vermute, ich sollte wissen, was eine Closure ist, aber ich habe immer noch keinen Weg gefunden, alles von JavaScript zu verstehen.

1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.