Полный пример здесь:Усы не оказывающего значение JSON в качестве JSON закодированной строки
{-# LANGUAGE OverloadedStrings #-}
module Test2 where
import Data.Aeson
import Text.Mustache
main :: IO()
main = do
let example = Data.Aeson.object [ "key" .= (5 :: Integer), "somethingElse" .= (2 :: Integer) ]
print . encode $ example
print ("Start" :: String)
case compileTemplate "" "{{{jsonData}}}" of
Right x -> do
print $ substituteValue x (Text.Mustache.object ["jsonData" ~= example])
Left e -> error . show $ e
выше производит следующий вывод:
"{\"somethingElse\":2,\"key\":5}"
"Start"
"fromList [(\"somethingElse\",2.0),(\"key\",5.0)]"
Мой ожидание было бы произвести:
"{\"somethingElse\":2,\"key\":5}"
"Start"
"{\"somethingElse\":2,\"key\":5}"
Какие усов библиотеки вы используете? усы или стаха? – sjakobi
Я использую усы 2.1.2 –
Я не могу воспроизвести ваш результат - первая строка отсутствует. Вы можете это исправить? – sjakobi