关注、粉丝列表点击关注按钮增加游客登录判断
This commit is contained in:
@@ -27,9 +27,13 @@ import androidx.compose.ui.unit.sp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import androidx.paging.compose.collectAsLazyPagingItems
|
import androidx.paging.compose.collectAsLazyPagingItems
|
||||||
import com.aiosman.ravenow.AppState
|
import com.aiosman.ravenow.AppState
|
||||||
|
import com.aiosman.ravenow.GuestLoginCheckOut
|
||||||
|
import com.aiosman.ravenow.GuestLoginCheckOutScene
|
||||||
import com.aiosman.ravenow.LocalAppTheme
|
import com.aiosman.ravenow.LocalAppTheme
|
||||||
|
import com.aiosman.ravenow.LocalNavController
|
||||||
import com.aiosman.ravenow.R
|
import com.aiosman.ravenow.R
|
||||||
import com.aiosman.ravenow.exp.viewModelFactory
|
import com.aiosman.ravenow.exp.viewModelFactory
|
||||||
|
import com.aiosman.ravenow.ui.NavigationRoute
|
||||||
import com.aiosman.ravenow.ui.comment.NoticeScreenHeader
|
import com.aiosman.ravenow.ui.comment.NoticeScreenHeader
|
||||||
import com.aiosman.ravenow.ui.composables.StatusBarMaskLayout
|
import com.aiosman.ravenow.ui.composables.StatusBarMaskLayout
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
@@ -38,6 +42,7 @@ import kotlinx.coroutines.launch
|
|||||||
@Composable
|
@Composable
|
||||||
fun FollowerListScreen(userId: Int) {
|
fun FollowerListScreen(userId: Int) {
|
||||||
val appColors = LocalAppTheme.current
|
val appColors = LocalAppTheme.current
|
||||||
|
val navController = LocalNavController.current
|
||||||
val model: FollowerListViewModel = viewModel(factory = viewModelFactory {
|
val model: FollowerListViewModel = viewModel(factory = viewModelFactory {
|
||||||
FollowerListViewModel(userId)
|
FollowerListViewModel(userId)
|
||||||
}, key = "viewModel_${userId}")
|
}, key = "viewModel_${userId}")
|
||||||
@@ -112,6 +117,10 @@ fun FollowerListScreen(userId: Int) {
|
|||||||
userId = user.id,
|
userId = user.id,
|
||||||
isFollowing = user.isFollowing
|
isFollowing = user.isFollowing
|
||||||
) {
|
) {
|
||||||
|
// 检查游客模式,如果是游客则跳转登录
|
||||||
|
if (GuestLoginCheckOut.needLogin(GuestLoginCheckOutScene.FOLLOW_USER)) {
|
||||||
|
navController.navigate(NavigationRoute.Login.route)
|
||||||
|
} else {
|
||||||
scope.launch {
|
scope.launch {
|
||||||
if (user.isFollowing) {
|
if (user.isFollowing) {
|
||||||
model.unFollowUser(user.id)
|
model.unFollowUser(user.id)
|
||||||
@@ -123,6 +132,7 @@ fun FollowerListScreen(userId: Int) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
PullRefreshIndicator(
|
PullRefreshIndicator(
|
||||||
refreshing = model.isLoading,
|
refreshing = model.isLoading,
|
||||||
state = refreshState,
|
state = refreshState,
|
||||||
|
|||||||
@@ -28,9 +28,13 @@ import androidx.compose.ui.unit.sp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import androidx.paging.compose.collectAsLazyPagingItems
|
import androidx.paging.compose.collectAsLazyPagingItems
|
||||||
import com.aiosman.ravenow.AppState
|
import com.aiosman.ravenow.AppState
|
||||||
|
import com.aiosman.ravenow.GuestLoginCheckOut
|
||||||
|
import com.aiosman.ravenow.GuestLoginCheckOutScene
|
||||||
import com.aiosman.ravenow.LocalAppTheme
|
import com.aiosman.ravenow.LocalAppTheme
|
||||||
|
import com.aiosman.ravenow.LocalNavController
|
||||||
import com.aiosman.ravenow.R
|
import com.aiosman.ravenow.R
|
||||||
import com.aiosman.ravenow.exp.viewModelFactory
|
import com.aiosman.ravenow.exp.viewModelFactory
|
||||||
|
import com.aiosman.ravenow.ui.NavigationRoute
|
||||||
import com.aiosman.ravenow.ui.comment.NoticeScreenHeader
|
import com.aiosman.ravenow.ui.comment.NoticeScreenHeader
|
||||||
import com.aiosman.ravenow.ui.composables.StatusBarMaskLayout
|
import com.aiosman.ravenow.ui.composables.StatusBarMaskLayout
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
@@ -39,6 +43,7 @@ import kotlinx.coroutines.launch
|
|||||||
@Composable
|
@Composable
|
||||||
fun FollowingListScreen(userId: Int) {
|
fun FollowingListScreen(userId: Int) {
|
||||||
val appColors = LocalAppTheme.current
|
val appColors = LocalAppTheme.current
|
||||||
|
val navController = LocalNavController.current
|
||||||
val model : FollowingListViewModel = viewModel(factory = viewModelFactory {
|
val model : FollowingListViewModel = viewModel(factory = viewModelFactory {
|
||||||
FollowingListViewModel(userId)
|
FollowingListViewModel(userId)
|
||||||
}, key = "viewModel_${userId}")
|
}, key = "viewModel_${userId}")
|
||||||
@@ -114,6 +119,10 @@ fun FollowingListScreen(userId: Int) {
|
|||||||
userId = user.id,
|
userId = user.id,
|
||||||
isFollowing = user.isFollowing
|
isFollowing = user.isFollowing
|
||||||
) {
|
) {
|
||||||
|
// 检查游客模式,如果是游客则跳转登录
|
||||||
|
if (GuestLoginCheckOut.needLogin(GuestLoginCheckOutScene.FOLLOW_USER)) {
|
||||||
|
navController.navigate(NavigationRoute.Login.route)
|
||||||
|
} else {
|
||||||
scope.launch {
|
scope.launch {
|
||||||
if (user.isFollowing) {
|
if (user.isFollowing) {
|
||||||
model.unFollowUser(user.id)
|
model.unFollowUser(user.id)
|
||||||
@@ -125,6 +134,7 @@ fun FollowingListScreen(userId: Int) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
PullRefreshIndicator(
|
PullRefreshIndicator(
|
||||||
refreshing = model.isLoading,
|
refreshing = model.isLoading,
|
||||||
state = refreshState,
|
state = refreshState,
|
||||||
|
|||||||
Reference in New Issue
Block a user