0
에서 "모호한 형태 변수"를 해결 할 수 없습니다 나는이 가지고 스팍 응용 프로그램이 그것은 다음과 같은 :은 아이손과 스팍
post "/test" $ do
a <- jsonBody' :: Aeson.Object
text "test"
을하지만, 운이 없었을 :
,369을• Couldn't match type ‘ActionCtxT
() (WebStateM() MySession MyAppState)()’
with ‘unordered-containers-0.2.8.0:Data.HashMap.Base.HashMap
T.Text b0’
Expected type: hvect-0.4.0.0:Data.HVect.HVectElim
'[] (SpockActionCtx()() MySession MyAppState())
Actual type: unordered-containers-0.2.8.0:Data.HashMap.Base.HashMap
T.Text b0
어떻게 고칠 수 있습니까?
갱신 :
이 문제가 해결되지 않습니다
a <- jsonBody' :: Aeson.Object
--a :: Aeson.Object <- jsonBody'
let b = show a -- using a
text "fdsfd"
확장자를 사용하지 않으려 고하지 않고 보관하는 방법은 무엇입니까? – Jodimoro
"a"를 사용하면 도움이되지 않습니다. – Jodimoro
'ScopedTypeVariables'는 전적으로 해가없고, 보편적으로 지원되며, Haskell의 프로그래밍에 관계없이 유용합니다. 어쨌든 나는 확장 기능을 사용하지 않는다. 그냥 임의로 구문상의 제한을 없애기 위해 사용한다. -하지만 내가 말했듯이 : 만약 당신이'a'를 사용한다면 (실제로'show '에 피드하는 것이 아니라 값으로 사용하십시오 - 즉, 그것은 monoorphic position에서 _ 발생해야합니다) _ 다음에 명시적인 서명이 필요하지 않습니다. . 또는'show'와 같은 다형성 부분에서 사용할 수 있지만 거기에'show (a :: Aeson.Object)'라는 서명을 주면됩니다. 그건'ScopedTypeVariables'을 필요로하지 않습니다. – leftaroundabout