SwiftUI结合搜索文本

问题描述 投票:0回答:1

我有后端API / search?q = New Je,这是JSON城市的返回列表

  • ““城市”:“新泽西”]
  • “城市”:“新珍妮·林德”]
  • “城市”:“新耶路撒冷”
  • ...

我有课

final class LocationStore: ObservableObject{
     @Published var List : [LocationModel] = []
     func search(q: String) {
         call backend search API and assign to List
     }

}

并且我在视图中搜索了TextField。

当用户在搜索文本字段中键入内容时,如何调用搜索API并分配给我的列表。在TextField中输入3个字符后需要显示下拉菜单

swift swiftui combine
1个回答
1
投票

如何解决类似这样的松散结构:

  • 设置一个文本字段,您可以通过某种方式观察输出。
  • 如果要使用合并,请创建一个管道,该管道在每次更改时发送该字段的值,然后在与您的规范匹配(> 3个字符)时触发一些输出]
  • 当合并管道触发器触发时,使用提供的值或仅使用触发器的性质来执行您要考虑的任何操作。

[在Using Combine模式下,在Declarative UI updates from user input模式中几乎可以完全在线地完成此示例代码。它涵盖了更多。如果您希望通过SwiftUI进行查看,则github project that hosts Using Combine也可以在项目中使用SwiftUI。

© www.soinside.com 2019 - 2024. All rights reserved.