syamskoy
@syamskoy

Что за странное поведение компонента?

Есть такая обвертка в Bootstrap.php :
$container->setSingleton(Queue::class, static function () {
            return Yii::$app->queue;
        });


Если выполнить код, то упадет с 500-й ошибкой, что Yii::$app->queue is null;
Если поставить брекпоинт только на строчке return ... , то мы увидим, что Yii::$app->queue действительно null и получаем 500-ю.
Если поставить брекпоинт на строчкe $container, то мы видим, что Yii::$app->queue не пустой и (!!!) программа неожиданно далее выполняется без падения, все отрабатывает.
Но! Если поставить брекпоинт на $container и на return, то мы увидим что Yii::$app->queue в return стал не пустым и так же все отрабатывает.
Это что корпускулярный-волновой дуализм?))
Причем выше таких обверток для компонентов несколько, но такое поведение только у этого. Месторасположение не влияет, перенос в main.php тоже. Просто вызов Yii::$app->queue вместо DI в том месте программы - отлично работает.
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ответы на вопрос 1
syamskoy
@syamskoy Автор вопроса
Решение: проблема в одноименном компоненте и контенере.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bezlimit Москва
от 100 000 до 130 000 руб.
Sky Way Capital Москва
от 100 000 до 150 000 руб.
21 авг. 2019, в 00:43
500 руб./за проект
21 авг. 2019, в 00:14
1000 руб./за проект