问题标签 [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 回答
34 浏览

ruby-on-rails - 根据使用 ReactBootstrap 的路由设置导航项的活动状态

使用 React Bootstrap 和 Hyperstack Router 确保选择正确的导航项的最佳方法是什么?

我知道我可以使用该Link方法,但我想改用特定的 BootstrapNav项。

有没有人可以分享的一个很好的例子?

0 投票
2 回答
79 浏览

javascript - 我可以在 Hyperstack 中制作功能组件吗?

所有文档都涉及使用类创建组件。我可以制作一个功能组件以利用反应钩子吗?如果可以,怎么做?

为了澄清,我只能找到用于创建基于类的组件的文档,例如

这相当于

我想重新创建以下内容:

0 投票
1 回答
380 浏览

javascript - 在 Rails 应用程序中转换 Javascript 数据表以使用 Opal

我正在使用ajax-datatables-rails。下面是我的数据表的 JS。我想将 javascript 转换为等效的 Opal.rb。

它包括将 CSRF 令牌添加到 ajax 数据请求中。

我希望我们所有的 javascript 都写成 opal 以提高可读性等。请不要争论那个选择,我只关心如何通过 opal/rails-ujs/opal-jquery 让它作为 Opalrb 工作

下面的 Opal 和上面的 JS 实现的不一样。谁能帮我理解为什么?

我在这里想念什么?为什么这个蛋白石不好?

编辑:这就是我的路线的样子,这确保 POST 适用于此:

这是我使用 gem 的相关控制器和数据表代码:

这是数据表

0 投票
1 回答
113 浏览

opalrb - require 'opal-jquery' 给出错误:找不到所需的文件

蛋白石看起来棒极了!!!当我尝试在两个不同的 Windows 7 和 Windows 10 系统上要求“opal-jquery”时,我得到了相同的“找不到所需的文件”错误:

文件 test.js.rb 由以下 3 行组成:

文件 opal-jquery.rb 存在:

但错误消息表明未搜索包含此文件的目录。

如果我删除 require 'opal-jquery' 行来创建 2 行文件 test_without_jquery.js.rb,它会起作用:

从 ruby​​ 运行两个 require 语句都可以正常工作

我使用 Process Monitor 实用程序来监视所有文件访问,同时 opal 进行编译。ruby 可执行文件读取 opal-jquery-0.4.3.gemspec 文件,但从未尝试打开任何其他 opal-jquery 文件。显然 gemspec 中的某些东西导致了这个错误,但唯一的运行时依赖是 opal < 0.12.0, >= 0.10.0,它应该由 0.11.4 满足。

我在 Ubuntu 16.04、opal 0.11.4、opal-jquery 0.4.3、ruby 2.3.1p112(2016-04-26 修订版)上看到完全相同的“未找到“test.js.rb”所需的文件”错误54768) [x86_64-linux]

我会很感激任何帮助。谢谢!!!

0 投票
1 回答
135 浏览

https - 无法设置 webrick https 服务器 + sinatra + opalrb(sprockets)

我想用 OpalRb Sprockets 使我的简单 sinatra 应用程序在 webrick https 上工作。

但它不起作用。对于每个生成的蛋白石 js 文件返回 404 :

[22/Oct/2019:17:48:17 HDT]“GET /assets/application.self-1919f5f7df8787d30bea01e4777248655a1ffc0533dcb37dedd4f797c018e19c.js?body=1 HTTP/1.1”404 555

[22/Oct/2019:17:48:16 HDT]“GET /assets/async/countdown.self-1a8c3d3b24219f07fe1d619745a23543afbc1862ed427e52d884ba406a0173ac.js?body=1 HTTP/1.1”404 564 https://localhost:44443/ -> /async/countdown.self-1a8c3d3b24219f07fe1d619745a23543afbc1862ed427e52d884ba406a0173ac.js?body=1 [2019-10-22 17:48:16] DEBUG Rack::Handler::WEBrick 被调用。127.0.0.1 - - [22/Oct/2019:17:48:16 -0900] “GET /assets/async/task.self-51bf482f4ed7ef3fb4dcdc63597ba56150e816bbdd68d6bc09c5e5f30f779723.js?body=1 ...

我假设 sprockets 路径未安装到 sinatra 应用程序。我启动服务器:“bundle exec rackup”

0 投票
1 回答
39 浏览

ruby - 如何使用 Opalrb 解析器获取 proc 内容

我需要通过 Opal ruby​​ 将 proc 的内容发送到 js。我只使用 Opal、Opal-native、opal-parser 的静态版本。我该如何进行?

0 投票
1 回答
70 浏览

javascript - 使用 Opal 有什么意义?

Opal 看起来像不错的图书馆,但我不确定它是否有真正的用途。你如何使用它?还是只是好奇?

0 投票
1 回答
35 浏览

opalrb - 如何在 Opal 中解析 URL?

假设我有一个要解析的 URL,包括查询字符串:

我希望能够获得查询字符串的哈希值,例如:

如何使用 Opal 解析这个? 我查看了诸如 URI 甚至 Ruby 中的 CGI 之类的选项,但似乎它们不可用。

显然,我可以自己分解这个字符串(或者可能使用 Addressable gem),但我想使用一些包含的库函数。

0 投票
1 回答
58 浏览

ruby - 使用 Opal Ruby 访问 DOM:如何正确安装 gem?

我想在 Opal Ruby 的帮助下测试一些简单的 SVG 动画,它是一个 Ruby 到 Javascript 的转译器。

然而,我使用 Opal 的第一步很尴尬。我根本无法访问 dom(文档对象模型)。

看来我的安装(宝石)可能是可疑的。我错过了一些东西:

返回:

/home/jcll/.rvm/gems/opal/gems/opal-1.1.1/lib/opal/builder.rb:182:in `read': can't find file: "opal-browser" in: (Opal ::Builder::MissingRequire)

以下是列出的宝石:

ast-2.4.2 opal-1.0.5 opal-1.1.1 opal-browser-0.2.0 opal-jquery-0.4.4 paggio-0.2.6 parser-2.7.2.0 parser-3.0.1.1 rake-13.0.4

这是我的红宝石测试:

最后是我的 HTML 代码:

(我的第一个意图是移动 SVG 圆圈或使用 Opal Ruby 对浏览器事件做出反应)

0 投票
1 回答
16 浏览

opalrb - 为什么 `require 'native'` 在 opalrb 中抛出异常?

我正在采取婴儿步骤opalrb,这是我的main.rb

它包含在<head>after中opal.js...opal-parser.js" onload="Opal.load('opal-parser')"但控制台显示抛出异常:

native似乎是 opal 标准库的一部分,那么为什么包含它会有问题呢?