【问题标题】:ClojureScript REPL with node-webkitClojureScript REPL 与 node-webkit
【发布时间】:2014-06-16 22:48:47
【问题描述】:

是否可以将 ClojureScript REPL 连接到 node-webkit 应用程序

我的 cljs 代码很简单:

(ns webkit-test.core
  (:require [clojure.browser.repl :as repl]))


(repl/connect "http://localhost:9000/repl")

以及对应的html

<!DOCTYPE html>
<html lang="en">
    <head>

    </head>

    <body>
        <div id="app"></div>

        <script src="out/goog/base.js" type="text/javascript"></script>
        <script src="out/webkit_test.js" type="text/javascript"></script>
        <script type="text/javascript">goog.require("webkit_test.core");</script>

    </body>

</html>

然后启动一个REPL如下

 lein trampoline cljsbuild repl-listen

当我尝试评估 (+ 1 1) 等表单时挂起

我正在关注moderncljs 教程,当我通过 http 服务器托管 html 页面时,我可以通过 REPL 进行连接,但是当它托管在 node-webkit 中时,它对我不起作用。我可以使用一些技巧来使其工作吗?我能够通过 LightTable 中的 script-tag 连接到 node-webkit,但这意味着我必须将 LightTable 用于 REPL(有时可能没问题)。我只想拥有一个普通的 leinigen ClojureScript REPL 来与我的 node-webkit 应用程序对话。我看过这个post,但没有帮助。

【问题讨论】:

  • 我得到了与这篇文章中描述的相同的错误:groups.google.com/forum/#!topic/clojure/BQa9WkRvloo(未捕获的错误:URI 文件:/robots.txt 对字段 ppu 无效)。原因如下:“REPL 不适用于混合协议”。这是否意味着我可以忘记将 REPL 连接到 node webkit ?

标签: clojurescript node-webkit


【解决方案1】:

我在尝试从非 HTTP 上下文连接到 ClojureScript REPL 时遇到了类似的问题,因此我编写了一个简单的 REPL 服务器和客户端,它通过 WebSockets 而不是 HTTP/iframe 消息进行通信。

https://github.com/tomjakubowski/weasel

我对 Node WebKit 不熟悉,但大概您可以通过这种方式从您的页面连接 REPL。

【讨论】:

    猜你喜欢
    • 2012-05-15
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多