Skip to content

Commit 9365b41

Browse files
committed
refactor: 불필요 상태 변화 제거
1 parent b3474c8 commit 9365b41

2 files changed

Lines changed: 5 additions & 12 deletions

File tree

DevLog/Presentation/ViewModel/SearchViewModel.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ final class SearchViewModel: Store {
1313
var isLoading: Bool = false
1414
var isSearching: Bool = false
1515
var searchQuery: String = ""
16-
var selectedWebPage: WebPageItem?
1716
var webPages: [WebPageItem] = []
1817
var todos: [TodoListItem] = []
1918
var recentQueries: OrderedSet<String> = []
@@ -27,7 +26,6 @@ final class SearchViewModel: Store {
2726
enum Action {
2827
case fetchWebPage([WebPageItem])
2928
case fetchTodos([TodoListItem])
30-
case selectWebPage(WebPageItem)
3129
case addRecentQuery(String)
3230
case removeRecentQuery(String)
3331
case clearRecentQueries
@@ -78,8 +76,6 @@ final class SearchViewModel: Store {
7876
state.webPages = items
7977
case .fetchTodos(let items):
8078
state.todos = items
81-
case .selectWebPage(let item):
82-
state.selectedWebPage = item
8379
case .addRecentQuery(let query):
8480
let trimmed = query.trimmingCharacters(in: .whitespacesAndNewlines)
8581
guard !trimmed.isEmpty else { break }

DevLog/UI/Search/SearchView.swift

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@ struct SearchView: View {
2525
upsertUseCase: container.resolve(UpsertTodoUseCase.self),
2626
todoID: todoID
2727
))
28-
case .web(let url):
29-
WebView(url: url)
28+
case .web(let page):
29+
WebView(url: page.url)
3030
.toolbar {
3131
ToolbarItem(placement: .principal) {
32-
Text(viewModel.state.selectedWebPage?.title ?? "")
32+
Text(page.title)
3333
.bold()
3434
}
3535
}
@@ -213,10 +213,7 @@ struct SearchView: View {
213213
}
214214

215215
private func webResultRow(_ item: WebPageItem) -> some View {
216-
Button {
217-
viewModel.send(.selectWebPage(item))
218-
router.push(Path.web(item.url))
219-
} label: {
216+
NavigationLink(value: Path.web(item)) {
220217
VStack(spacing: 4) {
221218
HStack {
222219
CacheableImage(url: item.imageURL) {
@@ -290,6 +287,6 @@ struct SearchView: View {
290287

291288
private enum Path: Hashable {
292289
case todo(String)
293-
case web(URL)
290+
case web(WebPageItem)
294291
}
295292
}

0 commit comments

Comments
 (0)