问题标签 [encodable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 通过注入仅符合 Encodable 协议的类来创建 Encodable 类
我正在构建网络模块,该模块使用Body
将被编码为 url 请求正文的类。我想Body
使用符合 Encodable 协议的任何类进行初始化,在我的情况下,它是MyDevice
符合的类DeviceEncodable
,它是定义我的 url 请求所需的一切的协议。MyDevice
该类已经从另一个名为 的类继承,SpecialClass
因此我只能使其符合协议,因为 swift 不允许从多个类继承。问题是当我初始化Body
时DeviceEncodable
我得到错误“类型'Body'不符合协议'Encodable'”我明白这是因为DeviceEncodable
可以是类但也可以是其他一些符合它的协议。DeviceEncodable
作为财产使用的正确解决方案是什么Body
函数,因此它将被正确编码而无需继承?这是Samble代码:
swift - 带有动态键的 Swift 可编码递归枚举
我正在尝试为动态数据编写一个结构。数据的键是未知的,它们的值也是未知的。结构如下所示:
这样做的目标是能够像这样解码 JSON:
并具有以下代码:
编码为上述 JSON 输出。
这在 Swift 中可能吗?如果是这样,实现会是什么样子?
提前谢谢了。
swift - 编码字典而不在 Swift 中添加编码键枚举
我想编码一个可能是
或者
编码类如下所示
如何对请求进行编码以便获得所需的结果?目前,如果我这样做
我明白了
而且我不想要 JSON 中的“内容”。已经研究
过 Swift Codable:使用动态键编码结构,
但不知道如何在我的用例中应用
swift - Struct 中的 Codable 属性不允许 Struct 符合 Codable
我有一个需要符合“可编码”的结构。结构本身必须有一个对象,该对象也可以符合“可编码”。但是,这会阻止结构符合“可编码”本身。
例子:
我在这里缺少什么可以允许这种行为吗?
编辑:
正如@Sweeper 指出的那样,在编译时不知道类型message
是什么。所以我必须提供自定义编码/解码逻辑,以便可以在运行时解决。为此,我使用“方法”字符串的值来尝试对不同模型进行编码/解码。我想您也可以按顺序尝试不同的模型,直到其中一个起作用。
解决方案: