【发布时间】:2020-11-24 00:23:53
【问题描述】:
我对 Ios 开发有点陌生,但仍在研究 Xcode。
我已经下载了 Xcode 12 beta 3,并且正在使用 SwiftUI。
我使用的是 Xcode 11,当我写 print("something") 时,一切都很顺利。
升级到 12 beta 3 后,没有打印语句对我有用,也没有显示错误。
我正在尝试了解是我在 Xcode 设置中做错了什么还是错误。
任何帮助或建议都可以。
顺便说一句,网络请求没有到达服务器。我相信它之前失败了。服务器工作正常。也许这些信息可以帮助某人。
提前非常感谢!
代码示例:
import Foundation
protocol TodosNetworkServiceProtocol {
func fetchTodos(includingCompleted: Bool) -> [Todo]
func update(todo: Todo)
func add(todo: Todo)
func toggleIsCompleted(for todo: Todo)
}
// final class means it cant be inharited
final class TodosNetworkService: TodosNetworkServiceProtocol {
func fetchTodos(includingCompleted: Bool) -> [Todo] {
guard let todosUrl = URL(string: "http://localhost:5000/todos") else { return [] }
URLSession.shared.dataTask(with: todosUrl) { (data, response, error) in
// Here it gets into the if but print nothing.
if error != nil { print(error) }
guard let data = data else { return }
do {
let response = try JSONDecoder().decode([Todo].self, from: data)
} catch let err {
print(err)
return
}
}.resume()
return []
}
func update(todo: Todo) {
print("updating todo")
}
func add(todo: Todo) {
print("adding todo")
}
func toggleIsCompleted(for todo: Todo) {
print("toggeling todo")
}
}
【问题讨论】:
-
这能回答你的问题吗? How to print() to Xcode console in SwiftUI?
-
我正在使用 Xcode 12 beta 3 并且打印工作正常。检查您是否错误地在控制台日志中添加了一些过滤器,该过滤器过滤掉了所有打印消息。 [控制台日志过滤器位于 Xcode 的底部]
-
@Magnas 这不是同一个问题。我知道如何打印。它只是不打印。甚至默认情况下存在一段时间的(llb)也消失了。无论如何谢谢:)
-
@Prafulla 过滤器设置为所有输出,所以我不相信是这种情况.. 无论如何谢谢:)
-
我只观察到 Live Debug Preview 的情况,向 Apple 提交了反馈。
标签: swift xcode swiftui xcode12