問題タブ [decodable]

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.

0 投票する
5 に答える
3468 参照

arrays - 多次元および多型配列でデコード可能なSwift 4 JSON

わかりました、これはサーバーから受け取った私のjson形式です

今、私はそれを自分の構造体にデコードしたいのですが、まだ運がありません。

そして、URLSession の呼び出し元メソッドは次のようになります

そして、私が得たエラーは

配列に int があることはわかっており、値に String をキャストするだけですvar values: [[String]]?(このエラー ポップアップの理由)。ただし、Decodable のプロトコルに従っているため、構造体で多次元配列やタプルを使用することはできません。

また、「辞書をデコードすると予想されますが、代わりに配列が見つかりました」というエラーがスローされるため、データを辞書に変換することもできません。

この問題を解決するためのアイデアはありますか? データに文字列型をキャストしようとしましたが、まだうまくいきません...

p/s: すべての json 形式が文字列型であれば問題ありませんが、API から呼び出すため、それを変更する権限がありません。

0 投票する
2 に答える
1519 参照

ios - 配列要素を文字列にマッピングするコーディング可能なオブジェクト

バックエンドが次のようなオブジェクトを返す (迷惑な) 状況があります。

ここで、各プロパティは、最初の要素として文字列を保持する配列です。私のデータ モデルstructでは、各プロパティを配列として宣言できましたが、それは実際には醜いものです。私は自分のモデルをそのようにしたいと思います:

ただし、これはもちろん、型が一致しないため、エンコード/デコードに失敗します。これまで、オブジェクトとプロパティObjectMapperを提供するライブラリを使用してきました。これにより、プロパティを型として宣言し、モデルメソッドでこの関数を介して各値を割り当てることができました。MapcurrentValueStringinit

しかしCodable、私はアプローチに変換しているので、そのようなマッピングを行う方法がわかりません。何か案は?