javascript - 在 Rhino 上运行 CoffeeKup?

标签 javascript coffeescript rhino coffeekup

我正在尝试让 CoffeeKup 与 Mozilla 的 Rhino 引擎一起工作。到目前为止运气不佳。我正在尝试这个简单的模板:

templates ?= {}
templates.first = ->
    doctype 5
    html ->
        head ->
            title "#{@title}"
        body ->
            h1 "#{@hello}"

哪个我compile into Javascript然后尝试使用

渲染
CoffeeKup.render(templates.first, {title: 'Say Hello', hello: 'Hello World!'});

但它失败了:

org.mozilla.javascript.EcmaError: SyntaxError: invalid return (CoffeeKup#304(Function)#230)

在 coffeekup.coffee 的 Javascript 版本中,第 304 行是这一行:

return new Function('data', code);

code第 230 行(最后一行)是这样的:

).call(data);return __ck.buffer.join('');

是否有任何异常,或者这可能是 Rhino 错误?

最佳答案

如果它适用于 Node/V8 + 浏览器但不适用于 Rhino,您可以相当确定它是 Rhino 特有的东西(尽管不一定是错误的)。在 coffeekup.coffee 顶部的较长评论中它说它将在 Node 或浏览器上运行,所以很可能是这种情况。

要真正知道出了什么问题,您需要一个调试器,您可以在其中单步执行代码(我不知道如何在 Rhino 上执行此操作,可能是通过 Eclipse 甚至可能是 jdb如果您手边有所有资源并且非常精通 Java)。如果您发现一些合理的微不足道的事情,请尝试提交 issue ,但 CoffeeKup 在过去几个月似乎没有太多事件。如果您准备迎接挑战,请 fork 、修复和拉取请求。

关于javascript - 在 Rhino 上运行 CoffeeKup?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8701291/

相关文章:

javascript - 如何获取两个异步函数的两个参数?

javascript - 显示Rails中所选类别的子类别,类别和子类别在同一个表中

rhino - 从 Rhino 切换到 Nashorn

java - Dojo 未加载到嵌入 java 的 rhino 中

javascript - Jquery 表格排序器 : Select for external filter instead of input?

javascript - MathJax JS API : How to send a var with text in it and get html out of it?

javascript - 如何确保控制台对象作为 CoffeeScript 中窗口对象的属性存在

javascript - 将 jQuery 自动完成数据附加到 textarea 内容而不是覆盖它

javascript - 完整性检查 : Rhino does not have a require function, 对吗?

javascript - RIA 中跨浏览器的键盘快捷键约定、可访问性