스팀 앱 - 개발 중: 프로필 화면 개발에 필요한 ProfileViewModel 클래스 작성 중
스팀 앱 - 개발 중: 프로필 화면 개발에 필요한 ProfileViewModel 클래스 작성 중
2023. 12. 13 (수) | Written by @dorian-mobileapp
ProfileViewModel 클래스. 클래스 자체는 이미 오래 전에 만들어 두었네요. 지금은 이것을 개발하고 있습니다. 프로필을 읽는 메소드는 일단 만들었구요. 이것으로 충분한가... 잘 돌아가는지 확인하기 위한 테스트 코드도 만들어야 합니다. 오늘은 작성한 메소드만 공유해 봅니다. readSteemitProfile 메소드는 검증된게 아니라 내일 수정 가능성 있습니다.
class ProfileViewModel : BaseViewModel() {
private val _profileState: MutableStateFlow<ProfileState> = MutableStateFlow(ProfileState.Loading)
val profileState = _profileState.asStateFlow()
private val readSteemitProfileUseCase = ReadSteemitProfileUseCase(SteemRepositoryImpl())
fun readSteemitProfile(account: String) = viewModelScope.launch {
_profileState.emit(ProfileState.Loading)
val apiResult = readSteemitProfileUseCase(account)
val newState = when (apiResult) {
is ApiResult.Failure -> ProfileState.Failure(apiResult.content)
is ApiResult.Error -> ProfileState.Error(apiResult.throwable)
is ApiResult.Success -> ProfileState.Success(apiResult.data)
}
_profileState.emit(newState)
}
}
Layout provided by Steemit Enhancer hommage by ayogom
Posted through the ECblog app (https://blog.etain.club)
안녕하세요.
SteemitKorea팀에서 제공하는 'steemit-enhancer'를 사용해 주셔서 감사합니다. 개선 사항이 있으면 언제나 저에게 연락을 주시면 되고, 관심이 있으신 분들은 https://cafe.naver.com/steemitkorea/425 에서 받아보실 수 있습니다. 사용시 @응원해 가 포함이 되며, 악용시에는 모든 서비스에서 제외될 수 있음을 알려드립니다.
[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.
Thank you, friend!


I'm @steem.history, who is steem witness.
Thank you for witnessvoting for me.
please click it!
(Go to https://steemit.com/~witnesses and type fbslo at the bottom of the page)
The weight is reduced because of the lack of Voting Power. If you vote for me as a witness, you can get my little vote.
안녕하세요.
이 글은 SteemitKorea팀(@ayogom)님께서 저자이신 @dorian-mobileapp님을 응원하는 글입니다.
소정의 보팅을 해드렸습니다 ^^ 항상 좋은글 부탁드립니다
SteemitKorea팀에서는 보다 즐거운 steemit 생활을 위해 노력하고 있습니다.
이 글은 다음날 다시 한번 포스팅을 통해 소개 될 예정입니다. 감사합니다!
Upvoted! Thank you for supporting witness @jswit.