- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想执行一个基本的 Ajax 请求,仅此而已。
我使用 reflex
作为前端,使用 Scotty
作为后端。 Firefox Web 控制台告诉我请求成功,我在那里看到了预期的结果。但网站从Just“default”
切换为Nothing
,而不是Just“success!”
。
这是一个完整的最小示例:
import Reflex (holdDyn)
import Reflex.Dom (button, el, mainWidget, display)
import Reflex.Dom.Xhr (performRequestAsync, xhrRequest, decodeXhrResponse)
import Reflex.Class (tag, constant)
import Data.Default (def)
main :: IO ()
main = do
mainWidget $ el "div" $ do
buttonEvent <- button "click me"
let defaultReq = xhrRequest "GET" "mystring" def --served by Scotty
asyncEvent <- performRequestAsync (tag (constant defaultReq) buttonEvent)
buttonDyn <- holdDyn (Just "default") $ fmap decodeXhrResponse asyncEvent
display buttonDyn
和Scotty
部分:
{-# LANGUAGE OverloadedStrings #-}
import Web.Scotty
import Network.Wai.Middleware.Static
main = scotty 3000 $ do
middleware $ staticPolicy (noDots >-> addBase "/mnt/b/haskell/try-reflex/hello.jsexe")
get "/" $ do
file "/mnt/b/haskell/try-reflex/hello.jsexe/index.html"
get "/mystring" $ html "success!"
由于调试工具告诉我请求成功,我怀疑在 decodeXhrResponse
附近有错误,但我有点迷失了应该如何进行调试,因为它只是被编译为(不可读的)Javascript .
我使用 GitHub 上的 try-reflex Nix 脚本来设置所有内容,并在 Nix 环境中使用 ghcjs hello.hs
进行编译。
编辑:添加curl
的输出:
$ curl -G http://localhost:3000/mystring
success!%
最佳答案
在 freenode 上的 #reflex-frp
的帮助下,我找到了一个解决方案:用 _xhrResponse_body
替换 decodeXhrResponse
并使用 Text
为默认字符串:
buttonDyn <- holdDyn (Just $ T.pack "default") $ fmap _xhrResponse_body asyncEvent
decodeXhrResponse
需要某种 JSON,尽管我曾经尝试通过 Scotty 提供 JSON,但它仍然不起作用。
关于haskell - 使用 reflex/reflex-dom 的 Xhr 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30264504/
我正在查看 ICE/STUN 规范并有一个问题。 如果我位于可能是全锥、受限或端口受限但不是对称 NAT 的 NAT 后面,并且考虑到我使用的是 UDP,那么在这种情况下,我的 SERVER REFL
我想执行一个基本的 Ajax 请求,仅此而已。 我使用 reflex 作为前端,使用 Scotty 作为后端。 Firefox Web 控制台告诉我请求成功,我在那里看到了预期的结果。但网站从Just
我刚开始使用 reflex-dom库,我无法弄清楚使用对话框的正确和方便的方法。 显示对话框通常意味着在 的末尾添加一些元素并在用户单击某个按钮、背景或按下时将其删除,例如逃脱。然而,从一些嵌套的小
这个类图是什么意思?自反关联的类图使用了实线和箭头,但这里换成了空心的菱形。它与递归有什么关系吗?这个类图会生成什么?如果能举个例子最好。另外这个递归关系应该是一对多的,存数据库怎么建表。 最佳答案
所以我刚刚发现了这个库,并认为它对于构建 UI 来说可能很棒。这是我在学习这个库时尝试实现的一个小练习。基本上,它尝试打开本地文件系统上的一个目录并显示该目录中的所有文件。它编译没有问题,但当我打开
在最简单的情况下,假设我有一个 Dynamic t Bool,当值为 true 时,我希望存在一个空的 div,而当值为 false 时,我不希望存在希望有任何 dom 元素。 更一般地说,如果我有一
假设我有一些应用程序状态,在某个后端系统上维护。看起来像这样 data MyState = State1 MyState1 | State2 MyState2 data MyState1 = MySt
我想使用 reflex-platform 中的工作脚本来编译一个项目,该项目到目前为止一直使用堆栈管理,如解释的那样 here . 在 stack.yaml 的包列表中,我引用了一个位于本地路径中的包
希望你们一切都好! 我读了很多关于这个问题的书,但没有找到对我有用的东西.. 说明背景: 我正在用go编写rest api,但此处显示的代码是出于可读性的伪代码。 我将docker与docker-co
这个小程序的目的是显示三个按钮,第三个按钮的标签最初是“0”,然后是最后一次点击按钮的索引。现在按钮的数量和其他按钮的标签是恒定的。 当我用 ghcjs 编译这个自包含文件并在浏览器中加载 Main.
使用 reflex-gi-gtk-0.2.0.0 时我可以从事件中访问动态: submitButtonE4 do path return "" -
我尝试使用 cabal install 安装 reflex 和 reflex-dom 我收到以下错误消息: $ cabal install reflex-dom ... cabal: The foll
main = mainWidget $ el "div" $ do let fileInputConfig = FileInputConfig (constDyn Map.empty)
以下代码将 reflex-dom 下拉元素直观地显示为列表框,并始终在底部显示最后选择(单击)的行。 {-# LANGUAGE OverloadedStrings #-} import
我在Eclipse Neon中使用了一个名为ObjectAid的插件,它是一个自动生成UML图的插件。 现在我理解了生成的 UML 中的所有内容,除了一件事,即箭头“~class instance”旁
我用`igraph包的layout.circle算法绘制了这个图。 左侧自环连接的一些标签并不清晰可见,因为它们放置在节点间边缘的后面。我可以应用任何调整来提高绘图的可读性而不改变标签的距离吗? (我
我正在 build (又一个)manual signalling WebRTC chat via DataChannels (CoffeeScript,对不起 JS 伙计们)。它在本地连接中工作正常,
我是一名优秀的程序员,十分优秀!