小编Sev*_*ian的帖子

在 cabal 文件的库或可执行部分中构建依赖项?

首先,我是在 Haskell 中使用 cabal 和外部包的新手。

我正在尝试使用 MyLib 中的 Graphics.Gloss 包。如果我gloss同时包含build-dependsoflibraryexecutable.

这是 cabal 文件的相关部分:

library
  exposed-modules:     MyLib
  build-depends:       base ^>=4.13.0.0,
                       gloss ^>=1.13.1.1
  default-language:    Haskell2010

executable ray-tracer
  main-is:             Main.hs
  other-modules:       MyLib
  build-depends:       base ^>=4.13.0.0, ray-tracer,
                       haskell-say ^>=1.0.0.0,
                       gloss ^>=1.13.1.1
Run Code Online (Sandbox Code Playgroud)

MyLib.hs

module MyLib (someFunc) where
import Graphics.Gloss

someFunc :: IO ()
someFunc = display (InWindow "My Window" (200,200) (10,10)) white (Circle 80)

Run Code Online (Sandbox Code Playgroud)

主文件

module Main where

import qualified MyLib (someFunc)
import HaskellSay (haskellSay)

main :: …
Run Code Online (Sandbox Code Playgroud)

haskell cabal

5
推荐指数
1
解决办法
352
查看次数

IO monad 处理,简化绑定语法

在编写一个小型日期程序作为练习在 Haskell 中处理 monad 的练习时,我想出了localDate下面的辅助函数。我更喜欢绑定链接语法而不是 do 块 - 请提供有关一种语法是否更符合 Haskell 标准的任何输入。

我的主要问题与简化localDate. 是否可以在没有两个绑定操作的情况下将 getCurrentTimeZone 和 getCurrentTime 都传递给 utcToLocalTime?

localDate :: IO(Day)
localDate = localDay <$> zoneNow where 
    zoneNow = getCurrentTimeZone >>= \z -> getCurrentTime >>= \t -> return $ utcToLocalTime z t

localDate' :: IO(Day)
localDate' = do
   z <- getCurrentTimeZone
   t <- getCurrentTime
   let zoneNow = utcToLocalTime z t
   return $ localDay zoneNow
Run Code Online (Sandbox Code Playgroud)

monads haskell functional-programming

3
推荐指数
1
解决办法
68
查看次数

功能组件中渲染之间的数据持久性

我目前正在从一个useEffect挂钩中的 CSV 文件加载 2000 多个对象。每次searchTerm更改时,CSV 文件中的所有数据都会重新加载和过滤。详情请参考以下代码:

  useEffect( () => {
    const asyncLoadWords = async () => {
      const dnd_words = await d3.csv(data_csv);
      const results = dnd_words.filter(wordObject => {
        return wordObject.??.toLowerCase().includes(searchTerm);
      });
      setSearchResults(results);
    }
    asyncLoadWords();    
  },[searchTerm]);
Run Code Online (Sandbox Code Playgroud)

有没有办法在渲染之间保留 CSV 数据?我一直在考虑的一种可能的解决方案是创建一个子组件,它将 CSV 数据作为道具并通过useEffect.

任何投入将不胜感激。

csv reactjs use-effect

2
推荐指数
1
解决办法
108
查看次数