问题标签 [clojurescript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
545 浏览

clojure - defpartial 返回对象而不是 HTML 字符串

我正在使用 Chris Ganger 的 crate 库在客户端生成 html。

当我在 clojurescript repl 中执行上述函数时,(html)我得到#<[object HTMLDivElement]>.

但是,当我将其执行为 时(.log js/console (html)),正确生成的 html 会登录到浏览器的控制台中。

如何让它返回 HTML 字符串而不是对象?

谢谢,穆尔塔萨

0 投票
1 回答
3287 浏览

clojure - ClojureScript 参数声明错误

当突然出现这个错误时,我正在愉快地使用 clojurescript 破解:

java.lang.IllegalArgumentException: 参数声明 clojure.core/let 应该是一个向量 core.clj:6567 clojure.core/assert-valid-fdecl core.clj:220 clojure.core/sigs

我尝试评论所有代码,重新启动服务器等.....我正在使用 cljsbuild 0.2.1 进行编译。如何调试此错误?

下面是完整的堆栈跟踪,它没有显示哪一行可能导致错误 -

0 投票
4 回答
670 浏览

clojure - Clojure(脚本):用于同步推理异步操作的宏

语境

我正在使用 ClojureScript,所以 Ajax 对我的工作方式如下:

处理程序看起来像:

现在,这意味着当我想说“获取新数据并更新左侧边栏”之类的话时,我的最终结果看起来像:

现在,我宁愿把它写成:

但它不起作用,因为 make-ajax 调用立即返回。

问题

有没有办法通过单子或宏来完成这项工作?这样 [2] 会自动重写为 [1] 吗?我相信:

  • 不会有性能惩罚,因为它被重写为 [1[
  • 我可以更清楚地推理,因为我可以以同步步骤而不是异步事件来思考

    我怀疑我不是第一个遇到这个问题的人,所以如果这是一个众所周知的问题,那么“Google for Problem Foo”形式的答案是完全有效的。

谢谢!

0 投票
2 回答
1316 浏览

clojure - clojurescript 断点

有没有办法在 clojurescript 中创建断点?在 repl 或 chromes 本机调试器中。

我已经尝试过 (js* "debugger") 并且返回

SyntaxError:意外的令牌调试器

谢谢!

0 投票
1 回答
261 浏览

clojure - 包含 google 依赖项的 clojurescript 错误

我有 cljs 页面,我需要一个 google 闭包依赖项 -

这是我在加载 html 页面时看到的错误。错误记录在浏览器的 js 控制台中 -

我没有看到使用 cljs-build 编译 clojurescript 的任何错误。

0 投票
2 回答
405 浏览

clojure - 用于操作 clojure 映射的“jQuery”类型函数

有没有 jQuery 类型的函数来解决遍历嵌套地图的问题?

例如,如果我的配置如下所示:

我还没有想出用 assoc 和 dissoc 操作嵌套持久数据结构的好方法。但是,如果有一种jquery风格的方式来操作地图,那么我可以编写如下代码:

对于选择器来说是这样的:

所以本质上,我正在寻找一种jayq用于操作 clojure 对象而不是 html doms 的实现。

提前致谢!

0 投票
1 回答
2131 浏览

dom - Clojurescript DOM 接口

是否有使 DOM 看起来像 Clojure 数据结构的 Clojurescript 库?我发现了一些像 Enfocus 这样的库,它们可以进行某些类型的 DOM 操作,但我想要的是能够像这样对待 DOM:

等等

0 投票
2 回答
625 浏览

clojurescript - ClojureScript、JavaScript、AJAX 调用、继续传递样式

我意识到 Clojure 特意选择了没有延续。

我目前正在玩 ClojureScript。

我注意到在 JavaScript 的 AJAX 调用协议中,我经常传递一个函数来处理“AJAX 调用返回后要做什么”。

这听起来很像一个延续。

是否有一些标准方法可以在 ClojureScript 中设置 CPS?

如果不是,那么处理 AJAX 回调的正确方法是什么?

谢谢!

0 投票
3 回答
852 浏览

clojure - 我可以将 monad 与 clojurescript 一起使用吗?

我知道 monad 在 clojure 中可用,但有没有人证实它们在 clojurescript 中工作?

0 投票
1 回答
673 浏览

clojure - 如何将 clojure.contrib.monads 转换为与 clojurescript 一起使用?

我想在 ClojureScript 中使用 Clojure Monad 库 clojure.contrib.monads。是否有一个已经过测试的实现可以与 ClojureScript 一起使用,因为它没有出现在标准的 ClojureScript 发行版中?

(我假设我可能只需要将代码从 clj 复制并粘贴到 cljs 中。虽然宏呢,因为它们需要在 clj 文件中)

更新:(我是否认为这是我需要的两个文件?)

文件

好的,看起来这不存在。我将不得不首先通过 Clojure 中的实现,以确保不使用 eval 和类似的东西,因为 Clojurescript 不支持 Clojure 的所有功能。