MJExtensionの使用上の注意
485 ワード
単一例のクラスがjson回転モデルメソッドを呼び出すと、MJExtensionの最下位レベルでは、単一例のクラスのalloc initメソッドが呼び出され、属性付与時にバグが発生します.たとえば、次のようになります.
bug:
単一例のクラスUser appはまず1つのアカウントにログインします:userA、userAのメールボックスフィールドに値があり、それからuserAはログインを終了します(動的要求データなので、単一例の属性は空ではありません)userBを切り替えて、それからサーバーにBのデータを要求して、Bのメールボックスフィールドはnullではありませんが、MJExtensionメソッドを呼び出すとuserBの他のフィールドの値は変わりましたが、メールボックスフィールドは前のAの値です
// json -> array
User* model = [User mj_objectWithKeyValues:responseObject[@"data"]];
bug:
単一例のクラスUser appはまず1つのアカウントにログインします:userA、userAのメールボックスフィールドに値があり、それからuserAはログインを終了します(動的要求データなので、単一例の属性は空ではありません)userBを切り替えて、それからサーバーにBのデータを要求して、Bのメールボックスフィールドはnullではありませんが、MJExtensionメソッドを呼び出すとuserBの他のフィールドの値は変わりましたが、メールボックスフィールドは前のAの値です