Antworten:
Fügen Sie in Ihrer Klasse die Message ManagerInterface-Klasse ein:
__construct(\Magento\Framework\Message\ManagerInterface $messageManager) {
$this->messageManager = $messageManager;
}
Beachten Sie, dass Magento Methoden nicht mehr unterstützt :
$this->messageManager->addSuccess()
$this->messageManager->addError()
$this->messageManager->addWarning()
$this->messageManager->addNotice()
Verwenden Sie stattdessen:
$this->messageManager->addSuccessMessage()
$this->messageManager->addErrorMessage()
$this->messageManager->addWarningMessage()
$this->messageManager->addNoticeMessage()
Wenn Sie einen Controller verwenden, haben Sie ihn höchstwahrscheinlich erweitert
\Magento\Framework\App\Action\Action
Dies fügt das \Magento\Framework\Message\ManagerInterface
Objekt in seiner __construct
Funktion unter Verwendung des \Magento\Framework\App\Action\Context $context
Objekts ein
Also, um eine Nachricht anzuzeigen,
Erfolg -
$ this-> messageManager-> addSuccess (__ ('Dies ist Ihre Erfolgsmeldung.'));
Error -
$ this-> messageManager-> addError (__ ('Dies ist Ihre Fehlermeldung.'));
Warnung -
$ this-> messageManager-> addWarning (__ ('Dies ist Ihre Warnmeldung.'));
Beachten
$ this-> messageManager-> addNotice (__ ('Dies ist Ihre Kündigungsnachricht.'));
In anderen Klassen
class Dummy
{
/**
* @var \Magento\Framework\Message\ManagerInterface
*/
private $messageManager;
public function __construct(\Magento\Framework\Message\ManagerInterface $messageManager)
{
$this->messageManager = $messageManager;
}
public function someFunction()
{
$this->messageManager->addSuccess('Add your success message');
}
}
Soweit ich bemerkt habe, hat Magento2 sitzungsklassenspezifische Benachrichtigungsmeldungen entfernt.