【发布时间】:2016-04-22 11:00:22
【问题描述】:
无法使用 Swift 2.2、Xcode 版本 7.3 (7D175) 解包可选类型
请帮忙! 这是怎么回事?
EDIT1
let localPresenter = presenter
let localDataSource = dataSource
let configurator: ViewControllerConfigurator = { inputView in
let a = inputView as? ChatTableViewController
guard var chatListController = a else {
throw ApplicationErrors.ModuleConfigureError.WrongViewInput
}
localPresenter.view = chatListController
chatListController.presenter = localPresenter
chatListController.tableView.dataSource = localDataSource
}
EDIT2 此代码工作正常:
let localPresenter = presenter
let localDataSource = dataSource
let configurator: ViewControllerConfigurator = { inputView in
let a = inputView as? ChatTableViewController
if let chatListController = a {
localPresenter.view = chatListController
chatListController.presenter = localPresenter
chatListController.tableView.dataSource = localDataSource
} else {
throw ApplicationErrors.ModuleConfigureError.WrongViewInput
}
}
【问题讨论】:
-
请同时包含您的代码作为文本(使用edit按钮)。
-
很抱歉,我无法创建简单的示例项目。
-
@EricD 谢谢,我知道,但问题不在于断点。我不明白为什么 guard 可以很好地解包变量,但不能解包常量?
-
@EricD 谢谢你用断点指向我。