簡體   English   中英

什么是存儲用戶數據然后將其注入Typhoon的正確方法?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM