如何使用数据更新此变量 [关闭]
Posted
技术标签:
【中文标题】如何使用数据更新此变量 [关闭]【英文标题】:How do I update this variable with data [closed] 【发布时间】:2019-03-07 05:04:17 【问题描述】:新程序员来了!我正在处理网络请求,下面是我的代码的 sn-p。完成网络请求后,我想将请求中的值存储到变量中。但是,当变量在 if let 语句之外被调用时,它不会被更新。本质上,if let 语句中的 print 语句打印我要查找的值,但 if let
语句之外的 print 语句打印我为该变量设置的默认值。变量是全局的。我需要在代码的其他地方使用更新后的变量,有什么想法吗?
if let data = data
self.nameLabel.text = data.name
person = data.name
print(person)
print(person)
【问题讨论】:
您没有显示足够的上下文。您的print
很可能在异步完成块之外。
还可以尝试用 print("(person) : person from inside") 替换一个 print,这样调试会更容易。
【参考方案1】:
首先你没有显示完整的代码,所以我猜你需要主队列首先更新你的UILabel
,如下面的代码所示:
DispatchQueue.main.async
self.nameLabel.text = data.name
接下来,如果您想在请求完成并更新UILabel
后在其他地方访问该值,那么您可以通过这种方式从中获取值:
let value = self.nameLabel.text!
如果您想在请求完成后访问该值,那么您可以使用闭包和HERE 您可以查看它的示例。
【讨论】:
以上是关于如何使用数据更新此变量 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章