繁体   English   中英

如何调试反射程序-

[英]how to debug reflex-dom programs-

因此,我刚刚发现了这个库,并认为它对于构建UI来说可能很棒。 这是我在学习此库时尝试实现的一个小练习。 基本上,它尝试在本地文件系统上打开目录并显示此目录中的所有文件。 编译没有问题,但是当我打开index.html它只显示一个空白页。 我不知道如何调试程序。 这是代码:

{-# LANGUAGE OverloadedStrings #-}
import           Reflex.Dom
import qualified Data.Text as T
import           System.Directory
import           System.FilePath
import           Control.Monad
import           Data.List (map)


main :: IO ()
main = do
  files <- getDirectoryContents "/"
  let names = map (T.pack . show) files
  mainWidget $ body  names

body :: MonadWidget t m => [T.Text] ->  m ()
body files = el "div" $ do
  el "h2" $ text "Reflex File Test"
  el "ul" $ do
    let lables = map text files
    mapM_ (el "li")  lables

调试ghcjs问题的一个很好的第一步是检查浏览器控制台。 在这种情况下,您将看到: "/: getDirectoryContents: failed (operation unsupported on this platform)"

这是有道理的。 该代码在浏览器中运行-不在服务器上或直接在客户端上运行。 因此,整个文件系统概念在这里并没有真正适用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM