Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 覆盖午睡中的本地数据?_Ios_Swift_Siesta Swift - Fatal编程技术网

Ios 覆盖午睡中的本地数据?

Ios 覆盖午睡中的本地数据?,ios,swift,siesta-swift,Ios,Swift,Siesta Swift,我无法在Swift中成功设置午睡的本地数据。我的目标是在本地为URL设置UIImage,以便无需下载时间即可显示此本地图像 为此,我将URL的图像数据设置为: let resource = CustomRemoteImageView.imageCache.resource(myPhoto.url.absoluteString) let imageData = UIImagePNGRepresentation(image)! // I've also tried putting the UIIma

我无法在Swift中成功设置午睡的本地数据。我的目标是在本地为
URL
设置
UIImage
,以便无需下载时间即可显示此本地图像

为此,我将URL的图像数据设置为:

let resource = CustomRemoteImageView.imageCache.resource(myPhoto.url.absoluteString)
let imageData = UIImagePNGRepresentation(image)! // I've also tried putting the UIImage directly in there, because the transformation chain doesn't apply to local data, right?
let entity: Entity<Any> = Entity(content: imageData, contentType: "*/*") // I've played around with the content type too!
resource.overrideLocalData(with: entity)
这个系统对于所有远程映像都非常有效,但是它似乎总是无法解析这个被覆盖的本地映像。它似乎在尝试解析,但每次都失败了

i、 我正在午睡。资源事件

(Siesta.ResourceEvent) $R20 = newData {
  newData = network
}

但是实际的
.typedContent
nil

覆盖本地数据
覆盖本地内容
根本不与管道交互。午睡不会试图解析你所经历的;你覆盖的是你的资源得到的

此外,
overrideLocalData
overrideLocalContent
不会失败。他们总是更新资源的内容。如果调用这些方法,资源内容将与传递的内容匹配

所以…问题不在于解析。可能是什么

Entity.typedContent
是将
as?
应用于资源实体的
内容的快捷方式。如果您得到的是nil,则意味着(1)传递给
overrideLocalData
的实体的
内容
为nil,或者(2)调用
类型内容的上下文类型与
内容的实际运行时类型不匹配

如果打印
resource.latestData.content
,您会看到什么?这将向您显示实际存在的内容,并将排除
typedContent
的类型转换问题

如果不是nil,则比较网络请求中的值并获得要匹配的类型


如果它是nil,那么要么是其他东西清除了内容,要么是您首先传递了nil内容。请尝试
SiestaLog.Category.enabled=.common
并查看是否可以找到它设置的正确位置。

overrideLocalData
overrideLocalContent
完全不与管道交互。午睡不会试图解析你所经历的;你覆盖的是你的资源得到的

此外,
overrideLocalData
overrideLocalContent
不会失败。他们总是更新资源的内容。如果调用这些方法,资源内容将与传递的内容匹配

所以…问题不在于解析。可能是什么

Entity.typedContent
是将
as?
应用于资源实体的
内容的快捷方式。如果您得到的是nil,则意味着(1)传递给
overrideLocalData
的实体的
内容
为nil,或者(2)调用
类型内容的上下文类型与
内容的实际运行时类型不匹配

如果打印
resource.latestData.content
,您会看到什么?这将向您显示实际存在的内容,并将排除
typedContent
的类型转换问题

如果不是nil,则比较网络请求中的值并获得要匹配的类型

如果它是nil,那么要么是其他东西清除了内容,要么是您首先传递了nil内容。请尝试
SiestaLog.Category.enabled=.common
,看看您是否能够发现它在哪里,或者设置得不正确

(Siesta.ResourceEvent) $R20 = newData {
  newData = network
}