2015-12-14 4 views
0

Скажем, у меня есть класс, Logger, который не является компонентом, который использует ServiceA (помечен как Injectable). Логгера конструктор выглядит следующим образом:Как работает инъекция зависимостей в AngularDart?

Logger(this._logger); 

Will AngularDart неявно передать ServiceA к Logger при конкретизации, даже если регистратор не является компонентом или директивы? Документы AngularDart неясны.

+0

Не должен выглядеть ваш код как 'Logger (this._serviceA);'? –

+2

Возможный дубликат [Как работает инъекция зависимостей AngularDart?] (Https://stackoverflow.com/questions/20712318/how-does-angulardart-dependency-injection-work) – Mogsdad

ответ

0

Когда Logger был создан DI (AngularDart), он попытается разрешить все зависимости (аргументы конструктора, также транзитивные) и передать их конструктору или выбросить в противном случае.

+0

Спасибо за ответ, знаете ли вы, было бы верно для текущей сферы? Если область применения используется в каком-то классе, который не является компонентом или директивой, DI попытается также решить эту проблему? – Nodeocrat

+0

Не знаете, что вы подразумеваете под «текущей областью». Я не думаю, что есть исключения. Если вы запрашиваете экземпляр из DI (или Угловая) неявно), он пытается разрешить аргументы конструктора. Можете ли вы привести конкретный пример кода, чтобы продемонстрировать, что вы имеете в виду? –