gpt4 book ai didi

purescript - 如何从 `pulp init`到在浏览器中运行代码?

转载 作者:行者123 更新时间:2023-12-02 20:52:13 25 4
gpt4 key购买 nike

我成功地使用以下命令序列通过 nodejs 运行 PuLP 的 helloworld purescript:

$ pulp init
...

$ pulp run
* Building project in /data/works/beta_projects/js_games/processing/hello-ps
* Build successful.
Hello sailor!

接下来,我想通过将 div 内部文本注入(inject)到正文文本中,在浏览器中制作 Hello sailor! 消息

<html>
<body>
<div id="output" />
</body>
</html>

我需要执行哪些步骤?

<小时/>

我尝试 pulp server 命令并在 http://localhost:1337/ 获得空白页面,而无需提供 index.html > 并且控制台中没有任何消息。

pulp browserify 命令打印出我希望包含在 index.html 的脚本标记中的 javascript,但我不知道我在哪里需要放入 index.html 文件。

最佳答案

我刚刚开始使用 PureScript,所以肯定有更好的答案,但这可行。

在根文件夹中创建index.html并添加:

<!doctype html>
<html>
<body>
<script src="/jquery-3.2.1.min.js"></script>
<script src="/app.js"></script>
<div id="output"></div>
</body>
</html>

为了实际修改 DOM,此示例使用 https://github.com/purescript-contrib/purescript-jquery ,因此您必须确保在加载 app.js 之前加载 jQuery。

purescript-jquery 似乎是使用 DOM 最简单的选择。其他选项是

Main.purs 看起来像这样:

module Main where

import Control.Monad.Eff (Eff)
import Control.Monad.Eff.Console (CONSOLE)
import Control.Monad.Eff.JQuery (append, create, body, ready, setText, find)
import DOM (DOM)
import Prelude hiding (append)

main :: forall eff. Eff ( dom :: DOM
, console :: CONSOLE
| eff
) Unit
main =
ready $ do
-- Get the document body
body <- body

-- Find the div
div <- find "#output" body

-- Create a paragraph to display a greeting
greeting <- create "<p>"
append greeting div

setText "Hello Sailor!" greeting

运行pulp browserify,然后运行pulp server,您应该会看到问候语!

关于purescript - 如何从 `pulp init`到在浏览器中运行代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46403106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com