[英]What is the right way to store user data then inject it with Typhoon?
在我的iOS應用中,我有從網絡加載的用戶數據,並保存為普通的Objective-C對象,該對象將其數據保存到NSUserDefaults
。 我需要能夠注銷當前用戶並將其刪除,然后登錄新用戶並開始在整個應用程序中使用該用戶。 現在這只是一個單例,我正在使用-(User)currentUser
方法調用UserManager
。
我正在過渡到在我的( http://typhoonframework.org )中使用Typhoon框架進行依賴項注入。 什么是存儲用戶數據的正確方法? 我知道我可以保留我的UserManager
類,通過Typhoon將其注入到需要的任何地方,並將其設置為Typhoon類型definition.scope = TyphoonScopeSingleton;
。
但是,如果我這樣做,那還不是單身嗎? 我知道它會更好一些,因為它被注入到類中而不是隱藏在其實現中。 但是,似乎應該有一種更好的方法,將User
對象保留在某個位置,然后注入當前對象中的任意一個,而不用吸氣劑將其包裝在[injected]單例中。
謝謝。
感謝您使用台風!
如果我對您的理解正確,則需要將currentUser注入類,例如:
@implementation Assembly
- (User *)currentUser
{
return [TyphoonDefinition withFactory:[self userManager] selector:@selector(currentUser)];
}
- (UserManager *)userManager
{
return [TyphoonDefinition withClass:[UserManager class] configuration:^(TyphoonDefinition *definition) {
definition.scope = TyphoonScopeSingleton;
}];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.