有人可以解释一下 View Controller 中的依赖注入(inject),我们如何摆脱可选值?我已经阅读了很多关于它的文章,但不太清楚。将数据从一个 VC 传递到另一个 VC 是一种好方法吗?
class SecondVC: UIViewController {
var number: [String]?
override func viewDidLoad() {
super.viewDidLoad()
self.printNumbers()
}
func printNumbers() {
guard let number = self.number else { return }
print(number)
}
}
//+++++++ In First View Controller +++++++++++++++++
@IBAction func pushToSecondVC(_ sender: UIButton) {
let secondViewController = self.storyboard.instantiateViewControllerWithIdentifier("SecondVC") as SecondVC
secondViewController.number = self.numbers
self.navigationController.pushViewController(secondViewController, animated: true)
}
最佳答案
在您的示例中,如果您只是想摆脱可选值,请将 var number: [String]?
替换为 var number = [String]()
。这将创建一个空数组。
当您必须访问此属性时,您不再需要解包它。
关于ios - View Controller 中的依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52259854/