Upgrade
Upgrade auf Version 4.0
Die meisten Änderungen betreffen nur Autoren eigener Komponenten; gewöhnlicher Anwendungscode ist nicht betroffen. Die ganze Geschichte finden Sie im Blogartikel zum Release.
- Die Methode
getComponents()gibt nun einarraystatt einesiterablezurück, und ihre alten Argumente$deepund$filterTypewerfen jetztNette\DeprecatedException. Aus der Signatur waren sie bereits in Version 3.1 verschwunden, funktionierten zur Laufzeit aber bis jetzt weiter. Für den gesamten Teilbaum verwenden SiegetComponentTree(), gegebenenfalls kombiniert mitarray_filter()zum Filtern nach Typ. - Benachrichtigungen über das Anhängen werden nun von oben nach unten zugestellt: Das Callback
$attachedeines Elternteils läuft vor dem seiner Kinder, wodurch der Elternteil seinen Zustand vorbereiten oder ein Kind sogar entfernen kann, bevor es verarbeitet wird. Die Reihenfolge beim Trennen bleibt unverändert (zuerst die Kinder). - Die überschreibbaren Methoden
attached()unddetached()wurden entfernt; registrieren Sie Callbacks stattdessen übermonitor($type, $attached, $detached). - Die Klasse
Componentverwendet den TraitNette\SmartObjectnicht mehr, der magische Zugriff auf Properties ist aus der Basisklasse also verschwunden (ControlundBaseControlbinden den Trait selbst ein). - Die veraltete Konstante
NAME_SEPARATORwurde entfernt; verwenden SieNameSeparator, verfügbar seit Version 3.0.3.
Upgrade auf Version 3.0
Der Konstruktor von Nette\ComponentModel\Component wurde seit Jahren nicht verwendet und in Version 3.0 entfernt.
Es handelt sich um einen BC Break: Wenn Sie in einer Komponente oder einem Presenter den Konstruktor des Elternteils aufrufen,
müssen Sie den Aufruf entfernen.