Я смотрел на пользовательские области в кинжале 2 (this и this - это те, которые я пытаюсь создать в моем коде), и есть одна вещь, которую я все еще не могу понять, я вижу, что вы можете создайте компонент с настраиваемой областью, а затем все предоставленные формы модули, содержащиеся в этом компоненте, будут либо той же областью, что и компонент (одиночный элемент в компоненте), либо без ограничений, который будет возвращать новые экземпляры каждый раз, когда вы их получите.Может ли кинжал 2 иметь объекты меньше срока службы?
Но, что я до сих пор не получаю, если у вас есть область пользователя, а затем у вас есть некоторые модули, привязанные к этой области, скажем, что ваш сетевой компонент привязан к ней, так что сетевые вызовы используйте текущую пользовательскую информацию, если вы выйдете из учетной записи пользователя (или войдите в систему пользователя) в середине жизненного цикла деятельности, изменит ли он ссылки на объекты, которые вы в настоящее время отмечали как @Inject? или какой-либо другой экземпляр, который вы получили при вызове .inject (this) в методе onCreate. Или вы должны называть инъекцию еще раз, чтобы снова отобразить ссылки?
Любая помощь по этому вопросу высоко ценится :)
Спасибо за ответ, да, я считаю, что это должно быть что-то вроде этого, и это то, что я делаю в настоящее время, но я столкнулся с проблемой, что похоже, что вы не можете вводить 2 компонента, поэтому мне нужно иметь пользовательский компонент с пользователем-заглушкой, а затем снова вводить, когда есть реальный пользователь, потому что я не могу вставить свой «базовый компонент» плюс «пользовательский компонент», он пытается получить все инъекции из одного. –
, так что означает '@ singleton' просто означает прояснить без какой-либо реальной цели? Благодарю. – hqt
@hqt Любая область (включая Singleton) - это просто имя для разрешения зависимостей (если scope * a * зависит от * b *, то * b * не может зависеть от * a * (цикл)), называется ли это singleton или foo не имеет значения, сама область охватывает инкапсуляции зависимостей, которые «принадлежат» вместе, поскольку они (могут) зависят друг от друга и имеют аналогичную продолжительность жизни –