feat: 更新CreateFeed功能及相关视图组件
- 在CreateFeedFeature中新增isPresented依赖,确保在适当的上下文中执行视图关闭操作。 - 在FeedFeature中优化状态管理,简化CreateFeedView的呈现逻辑。 - 新增FeedListFeature和MainFeature,整合FeedListView和底部导航功能,提升用户体验。 - 更新HomeView和SplashView以集成MainView,确保应用结构一致性。 - 在多个视图中调整状态管理和导航逻辑,增强可维护性和用户体验。
This commit is contained in:
@@ -35,6 +35,7 @@ struct CreateFeedFeature {
|
||||
|
||||
@Dependency(\.apiService) var apiService
|
||||
@Dependency(\.dismiss) var dismiss
|
||||
@Dependency(\.isPresented) var isPresented
|
||||
|
||||
var body: some ReducerOf<Self> {
|
||||
Reduce { state, action in
|
||||
@@ -108,6 +109,11 @@ struct CreateFeedFeature {
|
||||
state.errorMessage = nil
|
||||
return .none
|
||||
case .dismissView:
|
||||
// 检查是否在presentation context中
|
||||
guard isPresented else {
|
||||
// 如果不在presentation context中,不执行dismiss
|
||||
return .none
|
||||
}
|
||||
return .run { _ in
|
||||
await dismiss()
|
||||
}
|
||||
@@ -176,4 +182,4 @@ struct PublishDynamicResponse: Codable {
|
||||
struct PublishDynamicData: Codable {
|
||||
let dynamicId: Int
|
||||
let publishTime: Int
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user