-4
私はGUIDを生成するには、次の関数を使用し
に関数の結果をСaching:Haskellの
import Data.UUID as UV
import Data.UUID.V1 as UV1
generateUUID :: String
generateUUID = UV.toString $ fromJust $ unsafePerformIO UV1.nextUUID
をそして私は、私はメソッドを呼び出す要素
createWidgetUI element uuid =
WidgetUI { wui_title = ""
, wui_id = uuid
, wui_attr_style = ""
, wui_attr_class = ""
, wui_styles = []
, wui_scripts = []
, wui_contents = []
, wui_children = []
, wui_element = element
}
wuiPanel :: UI WidgetUI
wuiPanel = do
return $ createWidgetUI elem uuid
where
uuid = generateUUID
elem = ContainerUI $ H.div
の作成に
generateUUID
を使用
wuiPanel
数回、私は同じUUID値を得る!しかし、異なるUUID値を持つ要素を取得するには、すべて
wuiPanel
というメソッドを呼び出す必要があります。私はそれを実装する方法を理解できません。
[UIモナド](http://hackage.haskell.org/package/threepenny-gui-0.6.0.6/docs/Graphics-UI-Threepenny-Core.html#g:3)を使用しているようですが、 [threepennyパッケージ](http://hackage.haskell.org/package/threepenny-gui-0.6.0.6) - 右から? – ErikR
私はOPが何を使用しているのか分かりません - あなたはおそらく正しいでしょう。 – chi
UIモナドはthreepennyパッケージからではありません!モナドは私によって 'データUI a = UI a'と書かれています。そしてインスタンスのFunctor、Applicativ、Monad for UI。 – QSpider