0
간단한 Purescript 앱을 만들려고하고 있는데 왜 타입 인스턴스 인스턴스 오류가 계속 발생하는지 알 수 없습니다.Purescript, 타입 클래스 인스턴스가 발견되지 않은 이유 이해
특히 내 Component
안에는 내 쿼리 대수를 조작하는 eval
함수를 정의합니다. 이 과정에서, 콘솔에 뭔가를 로그하여 재미있게 보냅니다. 나는이 프로그램을 실행할 때
type AppEffects eff = (HalogenEffects (console :: CONSOLE | eff))
data Query a = DoSomething a
eval :: Query ~> H.ComponentDSL State Query (Aff (AppEffects eff))
eval (DoSomething a) = do
liftEff $ log "print me out!"
-- do some stuff with the action
pure next
, 컴파일러는 소리 질러 :
tryPrint :: Eff (console :: CONSOLE | eff) Unit
tryPrint = log "print me out!"
그러나, 컴파일러는 아직도 내가 대한 인스턴스를 구현해야 저에게 말한다 :
No type class instance was found for
Control.Monad.Eff.Class.MonadEff ("console" :: CONSOLE
| t0
)
(Free
(HalogenFP EventSource
{ "someState" :: String
}
Query
(Aff
("avar" :: AVAR
, "err" :: EXCEPTION
, "dom" :: DOM
, "console" :: CONSOLE
| eff1
)
)
)
)
The instance head contains unknown type variables. Consider adding a type annotation.
그래서 내가 유형을 지정
MonadEff
typeclass. 나는이 오류를 정말로 이해하지 못한다. 누구든지 올바른 방향으로 나를 가리킬 수 있을까요?