0
일부 상태 정보를 제공하는 IO Bool 기능이 있습니다. 나는 "OK"또는 "KO"이 함수에 의해 반환 된 값에 따라 .tpl 파일의 스플 라이스에 쓰고 싶습니다.Snap, SnapletISplice 내부 IO Monade를 여는 방법
그래서 내가 행복 할거야, SnapletISplice 안에 IO 모나드를 들어 올려서 statusSplice :: SnapletISplice App을 ("splicename", statusSplice)와 바인딩하고 내부의 IO 모나드에서 값을 계산할 수 있습니다.
저는 SnapletISplice가 "IO Monad"이고 그러한 리프팅 기능이 있어야한다고 확신합니다. 그러나 나는 그것이 무엇인지 알 수 없다.
Nb : 스냅 0.11을 사용하고 있습니다. 따라서 일부 기능 (예 : liftHandle)이 제거되었습니다. 내가하고 싶은 것이 코드, 짧은에서
:app = ...
addSplices splices
...
splices = [("spliceName", statusSplice)]
statusSplice :: SnapletISplice App
statusSplice = do
st <- lift $ computeStatus
if st then textSplice "ok" else textSplice "ko"
를 가져 오는 경우
MonadIO
그래서liftIO
작동합니다 구현하고, 그것을 작동합니다. 내가 처음 시도했을 때 나는 어리석은 실수를 저질렀어야했다. 감사. – Ano