我正在尝试查询DynamoDB中的记录。如果有记录,我希望控制台打印市场名称和客户的主要语言。如果记录不存在,我希望控制台打印“该信息不在我们的记录中”。
但是,目前,我将runQuery()
链接到了一个按钮,在按下该按钮时,两个语句都按一个按钮打印。
注意:第二条语句打印四次。
这是按下按钮时运行的功能:
func runQuery(){
appSyncClient?.fetch(query: ListCustomerRegistrationsQuery(), cachePolicy: .returnCacheDataAndFetch) {(result, error) in
if error != nil {
print(error?.localizedDescription ?? "")
return
}
result?.data?.listCustomerRegistrations?.items!.forEach {
if $0?.firstInitial == self.firstInitialTextField.text && $0?.lastInitial == self.lastInitialTextField.text && $0?.needIndicatorId == self.numberNeedIndicatorTextField.text {
print(($0?.marketName)! + " " + ($0?.primaryLanguage)!)
}
else if $0?.firstInitial != self.firstInitialTextField.text || $0?.lastInitial != self.lastInitialTextField.text || $0?.needIndicatorId != self.numberNeedIndicatorTextField.text {
print("That info is not in our records.")
}
self.performSegue(withIdentifier: "goToDistribution", sender: self)
}
}
}
这是一次按下该按钮后创建的打印语句:
“街市英语”
“该信息不在我们的记录中。”
“该信息不在我们的记录中。”
“该信息不在我们的记录中。”
“该信息不在我们的记录中。”
答案 0 :(得分:0)
如果我对您的理解正确,那么您只希望在dateFrom
任一条件为真时返回/打印一次。在这种情况下,建议您在两个地方都添加一个if
break