4
我有一個可以嵌套多個註釋的json數組。ELM解析嵌套json
爲例:
[
{
"author": "john",
"comment" : ".....",
"reply": "",
},
{
"author": "Paul",
"comment" : ".....",
"reply": [
{
"author": "john",
"comment" : "nested comment",
"reply": [
{
"author": "Paul",
"comment": "second nested comment"
}
]
},
{
"author": "john",
"comment" : "another nested comment",
"reply": ""
}
]
},
{
"author": "Dave",
"comment" : ".....",
"reply": ""
},
]
所以它的評論列表,其中每一個註釋可以有回覆無限數量的答覆。 With Json.Decode.list
我可以解碼第一級的評論,但是如何檢查是否有一些回覆,然後再解析?
這是我試圖做的簡化版本。我其實試圖解碼reddit的評論。 exemple
你不想有一個解析「再」的心理模型。您希望針對同一個字段使用中間值或不同的解碼器。 看看http://package.elm-lang.org/packages/elm-lang/core/latest/Json-Decode#andThen。它允許根據已經解碼的數據來切換子解碼器。還有'oneOf',允許您解析空字符串(您可以手動將其轉換爲空的回覆列表)或嵌套的回覆。 – pierrebeitz