2024 Clojure 状况调查! 分享您的想法。

欢迎!请查阅 关于 页面,了解更多这个平台如何使用的信息。

0
ClojureScript

在引导ClojureScript的上下文中,cljs.js/eval-fn 接收JavaScript源代码并对其进行评估,返回一个结果。在某些上下文中,需要异步评估JS,我们能否添加此功能?

4 答案

0

评论由:dnolen 提供

此问题需要更多的论证。你能详细说明使用场景吗?

0

评论由:whamtet 提供

我的使用场景是一个异步评估函数

`
(fn eval-fn
[{:keys [source]}]
(js/chrome.devtools.inspectedWindow.eval source

(fn [result err]
  (if result
    (callback result)
    (callback err))))

`

肯定还有其他人有类似的情况。

0

评论由:dnolen 提供

有趣。我认为这不是一个常见用例,大多数JS引擎都提供了同步的eval。我对任何破坏性变更不感兴趣,但很高兴接受一个通过选项标志 {{:async-eval}} 给出您想要的行为的补丁。

0
参考:https://clojure.atlassian.net/browse/CLJS-1421(由 alex+import 提出)
...