问题标签 [opalrb]

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 回答
199 浏览

jquery - 如何使用 Opal-JQuery AJAX 发布/获取值

我正在尝试使用 opal-jquery 将值发布到服务器,但没有取得多大成功。如果我尝试发帖,我将一无所获。Get 给我一个不太有用的字符串中的值。

这是浏览器的控制台输出:

这是来自服务器的控制台。第一个是post,第二个是get。帖子是空的。

浏览器端代码:

服务器端代码:

0 投票
1 回答
253 浏览

ruby - 本机对象中的 Opal.rb 匿名函数

是否有可能以某种方式实现在 Hash 中分配的方法/lambda 以编译为本机对象中的本机函数?例如让

我需要x像这样的原生对象一样编译它:

好的,几乎可以按预期工作

有没有办法将方法转换为本机函数,例如

应用类似的东西

?

0 投票
1 回答
298 浏览

ruby - 欧泊彻底碎了?

我在让 Opal 工作方面完全没有成功。

当我尝试使用此处的教程或此处的示例代码将其嵌入 Sinatra 服务器时,我得到了。当我使用这篇文章底部链接的更新代码时,我得到了。undefined method 'source_maps' for #<Opal::Server:0x8b11540>uninitialized constant Opal::Sprockets::SourceMapHeaderPatch

所以,我放弃了 Sinatra 并尝试在 Rack 应用程序中使用 Opal,在这里使用他们自己的示例。我得到一个完全空白的网页。

最后,我完全按照教程进行 操作,但我再次得到的只是浏览器中的一个空白页面。

那么,我做错了什么?或者蛋白石真的像看起来那样破碎吗?

(哦,这甚至没有提到rescue块中parse()的两个严重的越界错误,opal/parser.rb这完全消除了调试错误的任何机会)

0 投票
1 回答
75 浏览

ruby - 远程上的 rails-opal 和 opal ujs:true

我使用rails-opalopal-jquery gems,也需要opal-ujs在 application.js.rb 中,但是例如,如果我使用该代码进行link_to "Foo", some_path, remote:true渲染,则该代码未在客户端上执行。如果我发送所有工作正常?这只是我的问题,还是不支持这种事情?ps 在其他任何地方都可以正常工作。remote_reply.js.rb layout:falseputs HIremote_reply.jsalert('foo');

0 投票
1 回答
114 浏览

html - 将元素附加到 VoltRb 中的页面

我正在尝试通过 opal-browser 将元素附加到 Volt 项目中的一个页面,如下所示:

不幸的是,我收到一个错误:

我附加的 DOM 元素非常合理。它只是以下代码:

我假设 Volt 不喜欢我将元素附加到控制器中的页面,而不是在视图 HTML 文件中手动创建它。有没有办法解决这个问题?我有点需要做这个元素附加的事情,以便与我与 Volt 一起使用的另一个库兼容。

0 投票
1 回答
59 浏览

html - 如何使用“模板”控制器制作页面并在 VoltRb 中查看

我在 Volt 中遇到问题,我需要一堆带有“模板”控制器和视图的页面。让我更详细地解释一下:

比如说,我有一个关于书籍的网站。我在 有一个页面http://localhost:3000/books。它用作其他页面的索引,例如http://localhost:3000/books/fantasy/lord_of_the_rings. 我希望所有以书籍为特色的页面都有一个控制器和视图,这样我就不必为我想要添加的每本书手动添加控制器和视图。相反,我只想在每一页添加内容,以使我的工作流程尽可能干燥。

因此,下面的文件结构app/main/views如下所示:

下面的文件结构app/main/controllers如下所示:

问题是我不知道如何设置它,app/main/config/routes.rb因为我猜这是定义页面的 URL 及其控制器、操作等的地方。我如何在 Volt 中实现这样的目标?

0 投票
1 回答
142 浏览

ruby - Opal rb eval 方法抛出“未定义的方法”

Opal.rb 没有 eval 方法吗?在课堂内外使用 eval 会抛出undefined method 'eval' 一切正常。

0 投票
2 回答
54 浏览

ruby - 如何在 VoltRb 中访问页面的 URL

我正在尝试在 Volt 的控制器上运行一些代码,但仅限于某些页面。我查看了文档,但我不确定如何访问给定页面的 URL。模型中是否可能存在一些隐藏变量或其他东西page,像这样?:

0 投票
1 回答
65 浏览

ruby - 如何在 VoltRb 中只加载一次组件文件

我有一个组件文件,我只想在我的 Volt 项目中加载一次。多次加载会导致问题,类似于多次加载 OpalRb 库。为了澄清,我将这个组件文件加载到一个视图文件中,并且它一直被加载,因为每次页面被点击时加载组件文件的行都会被调用:

如何设置我的代码以便我只能加载一次组件文件?

这是我的问题的一个例子:https ://gist.github.com/ylluminarious/f5ed3741d08528d87d26

0 投票
1 回答
47 浏览

random - 蛋白石中的随机种子

有没有办法在 Opal 中播种随机数生成器?srand似乎没有做任何事情,并且Random直接使用该类会出错NameError: uninitialized constant Object::Random