Flutter의 공유 환경 설정에서 데이터를 객체로 저장하는 방법은 무엇입니까?
같은 준비가 되셨습니까? 동일하게 다이빙합시다.
Flutter의 공유 환경 설정에 데이터를 객체로 저장하는 방법은 무엇입니까?
저장하기 전에 JSON으로 직렬화하고 읽은 후에 역직렬화해야 합니다. 확인할 수 있습니다flutter.dev.
아래와 같이 Shared Preferences에 객체를 저장할 수 있습니다.
SharedPreferences shared_User = await SharedPreferences.getInstance();
Map<String, dynamic> decode_options = jsonDecode(jsonString);
String user = jsonEncode(User.fromJson(decode_options));
shared_User.setString('user', user);
SharedPreferences shared_User = await SharedPreferences.getInstance();
Map<String, dynamic> userMap = jsonDecode(shared_User.getString('user'));
var user = User.fromJson(userMap);
class User {
final String name;
final String age;
User({required this.name,required this.age});
factory User.fromJson(Map<String, dynamic> parsedJson) {
return new User(
name: parsedJson['name'] ?? "",
age: parsedJson['age'] ?? "");
}
Map<String, dynamic> toJson() {
return {
"name": this.name,
"age": this.age
};
}
}
개체를 공유 기본 설정에 저장하려면:
SharedPreferences pref = await SharedPreferences.getInstance();
MapMap<String, dynamic> json = jsonDecode(jsonString);
String user = jsonEncode(UserModel.fromJson(json));
pref.setString('userData', user);
To fetch the object from shared preferences:
SharedPreferences pref = await SharedPreferences.getInstance();
Map<String, dynamic> json = jsonDecode(pref.getString('userData'));
var user = UserModel.fromJson(json);
아래 언급된 패키지를 가져와야 합니다.
import 'package:shared_preferences/shared_preferences.dart';
import 'dart:convert';
모델을 만드는 가장 쉬운 방법은 당사convert json string to Json object in Flutter 기사를 따르십시오.
API에서 데이터를 가져와 Sharepreference에 저장하는 경우
API에서 데이터를 가져오고 Flutter를 사용하여 Sharepreference에 저장하면 긴 코드와 SQLite로 작성된 지원 클래스를 줄이는 데 도움이 됩니다.
Future<UserDetails> UserInfo({String sesscode, regno}) async{
await Future.delayed(Duration(seconds: 1));
SharedPreferences preferences = await SharedPreferences.getInstance();
var map = new Map<String, String>();
map["sesscode"] = sesscode;
map["regno"] = regno;
var response = await http.post(Base_URL().user_info, body: map);
Map decodedata = json.decode(response.body);
if(decodedata != null){
String user = jsonEncode(UserDetails.fromJson(decodedata));
preferences.setString(SharePrefName.infoPref, user);
return UserDetails.fromJson(decodedata);
}
return null;
}
앱 어디에서나 이 함수를 호출할 수 있습니다.
Future<UserDetails> getSavedInfo()async{
SharedPreferences preferences = await SharedPreferences.getInstance();
Map userMap = jsonDecode(preferences.getString(SharePrefName.infoPref));
UserDetails user = UserDetails.fromJson(userMap);
return user;
}
이제 클래스 내에서 호출하여 사용자 이름을 얻습니다.
Future<UserDetails> usd = getSavedInfo();
usd.then((value){
print(value.surname);
});
Flutter Agency의 Flutter 개발자
결론:
FlutterAgency.com은 수년간의 경험을 보유한Flutter mobile app developers Flutter 기술 전용 플랫폼입니다. 그들은 이 플랫폼에 대한 기술을 가지고 있으며 귀하의 비즈니스에 가장 적합한 것을 제공할 것입니다. 포털에는 Flutter Widget Guide, Flutter 프로젝트, 코드 라이브러리 등과 같은 Flutter와 관련된 고급 리소스가 가득합니다. 많은 방문자가 Flutter 개발에 대한 지식을 높이고 명확하게 이해하기 위해 왔습니다.
flutteragency.com에서 우리와 연결하십시오. Flutteragency는 Flutter 애플리케이션에 고품질을 제공하고자 합니다. 우리는 최고 품질의 응용 프로그램을 제공하며 사용자는 번거로움 없이 사용할 수 있습니다.
Flutter Journey에 함께 해주셔서 감사합니다!!!
Reference
이 문제에 관하여(Flutter의 공유 환경 설정에서 데이터를 객체로 저장하는 방법은 무엇입니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/pankajdas0909/how-to-store-data-as-an-object-in-shared-preferences-in-flutter-2gpj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)