私はElmと協力して、私が取り組んでいるRest APIを使っていくつかのフロントエンドプロトタイプを作成し始めました。一般に、キーと値の型はよく知られているので、APIはデコードできる「合理的な」データ構造を返しますが、いくつかのリソース型は未定義のjsonを持つちょうどのエントリを返します。未知のjson構造を解読するElm
これまでに読んだことはすべて、デコードしているデータの構造を知っていると思われますが、プレーンなjsではキーをループして型を反映するのは比較的簡単です。実行時に処理されます。私はElmのこの種のデータを扱うための明確な道筋はまだ見ていません。
例えば、
{
"name":"foo",
"data": {
"bar": [{"baz":123}, "quux"]
},
...
}
私は具体的に
function go(obj)
for key in keys(foo)
if foo[key] is an object
go(foo[k])
else if foo[key] is an array
map(go, foo[k])
...
に似た何かでdata
エントリの値を解析することはできているかどうかを知りたいのですが
:
- Elmで不明な、おそらく深くネストされた異種のjsonデータを扱うことは現在可能ですか?
- もしそうなら、著者がこのようなデータをどのようにデコードするのかについて、私はキーコンセプトや高度な直感を教えていただけますか?
私はそれが「Elm-ではありません怖いですあなたが知らない構造を受け取るように "好きです。 Elmでは、オブジェクトには常に特定のプロパティが含まれていると予想され、Elmは実行時に、そのオブジェクトに存在するすべてのプロパティが存在するかどうかをチェックします。 –