dom – 如何使用Elm中的Window.dimensions初始化模型?
发布时间:2020-12-14 23:27:28 所属栏目:资源 来源:网络整理
导读:在滑动益智游戏中,我想根据初始窗口尺寸设置初始图块大小(以最大化屏幕空间). 换句话说,我想根据Window.dimensions的初始值设置initialModel. 我找不到如何做到这一点,并最终使用端口来获取初始窗口尺寸: 的index.html Elm.fullscreen(Elm.App,{ windowSize
在滑动益智游戏中,我想根据初始窗口尺寸设置初始图块大小(以最大化屏幕空间).
换句话说,我想根据Window.dimensions的初始值设置initialModel. 我找不到如何做到这一点,并最终使用端口来获取初始窗口尺寸: 的index.html Elm.fullscreen(Elm.App,{ windowSize: [ document.documentElement.clientWidth,document.documentElement.clientHeight ] }); App.elm port windowSize : (Int,Int) initialModel = -- some function of windowSize model = Signal.foldp update initialModel input type Action = WindowResize (Int,Int) | ... windowResize = Signal.map WindowResize Window.dimensions update action model = case action of WindowResize dimensions -> { model | some change based on dimensions } ... 有没有办法在不使用端口的情况下实现相同的结果? 解决方法
您可以使用
Apanatshka/elm-signal-extra包中的
Signal.Extra.foldp’来检查模型初始值对输入信号初始值的影响.
完全披露:我是该套餐的作者. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |