arrays - 无法使用可选的通用数组推断通用参数 T
问题描述
我的模型类中有一个方法,其签名如下:
func parse<T: Codable>(data: Data) throws -> Array<T>?
当我在另一个类中调用该方法时Facade
,我得到了
无法推断通用参数 T
调用函数如下
if let data = data {
do{
let parsedArray = try self.model.parse(data: data);
}
catch{
print(error)
}
parse
在我调用函数的行上给我编译器警告。
解决方案
您需要显式声明您正在设置的变量的类型或向 parse 方法添加另一个参数并传递所需的类型:
let parsedArray: [YourType] = try model.parse(data: data)
推荐阅读
- python - 对来自 github 的随机 python twitter bot 进行故障排除,试图让它工作
- django - 我正在使用代理模型、Seller(CustomUser) 和 Customer(CustomUser),我得到 'SellerManager' 对象没有属性 'normalize_email' 错误
- php - 登录时,Woocommerce 无法从 REST API 获取结果
- angular - ExpressionChangedAfterItHasBeenCheckedError:称为 Api 的角度更改数据
- mysql - 有条件地在 SELECT 语句中包含一列 - MYSQL
- python - python导入模块 - 我错过了什么?
- django - 在 django 中获取外键 id 时出错
- mysql - 为什么子查询中的 OR 会使查询慢得多?
- sql - 使用 Python 连接到 Jupyter Notebook 中的 SQL 数据库
- javascript - 在用户滚动到它们之前触发所有 `content-visibility: auto` 元素的渲染,而不会阻塞主线程超过 50 毫秒