Swift 编码问题:类型“_ErrorCodeProtocol”没有成员“成功”

Swift coding issue: Type '_ErrorCodeProtocol' has no member 'success'

提问人:Richie 提问时间:7/7/2023 最后编辑:Richie 更新时间:7/7/2023 访问量:77

问:

我目前正在做一个 Swift 项目,我的代码遇到了一些问题。我正在寻求社区的帮助,以帮助我解决这些问题。任何指导或建议将不胜感激。

问题:我有一个 ContentView.swift 文件,其中出现以下错误:

  • 类型“_ErrorCodeProtocol”没有成员“success”
  • “(_) -> SudokuGrid”类型的表达模式与“SudokuGrid”类型的值不匹配
class NumberGenerator {
    typealias SudokuGridCompletion = (Result<SudokuGrid, Error>) -> Void

    func generateSudokuGrid(completion: @escaping SudokuGridCompletion) {
        // Your logic for generating the Sudoku grid

        // Simulating a successful result
        let sudokuGrid = SudokuGrid(grid: [[1, 2, 3], [4, 5, 6], [7, 8, 9]])
        completion(.success(sudokuGrid))

        // Simulating a failure result
        // let error = NSError(domain: "com.example", code: 123, userInfo: nil)
        // completion(.failure(error))
    }
}

struct SudokuGrid {
    var grid: [[Int]]
}

// Usage example
let numberGenerator = NumberGenerator()
numberGenerator.generateSudokuGrid { result in
    switch result {
    case .success(let sudokuGrid):
        print("Generated Sudoku grid: \(sudokuGrid.grid)")
    case .failure(let error):
        print("Error generating Sudoku grid: \(error)")
    }
}

我已经检查了 import 语句并验证了类型的拼写和大小写。我还确保在正确的范围内定义类型。但是,错误仍然存在。

我将非常感谢任何见解、建议或指导来帮助我解决这些问题。如果您遇到过类似的问题或具有 Swift 编程方面的专业知识,您的帮助将是无价的。

提前感谢您的帮助!

swift 调试 swiftui 错误处理 类型推断

评论

0赞 Sweeper 7/7/2023
请展示一个最小的可重现示例,包括但不限于 的签名。numberGenerator.generateSudokuGrid
0赞 Richie 7/7/2023
@Sweeper 谢谢你的建议。我已经更新了这篇文章,以包含一个最小、可重复的示例 (MRE),该示例侧重于 numberGenerator.generateSudokuGrid 方法的签名。
0赞 Sweeper 7/7/2023
您的示例实际上不可重现。在此处查看它完全按预期工作
0赞 Joakim Danielson 7/7/2023
您的视图中有错误,但尚未发布视图代码。

答: 暂无答案