使用 Opal Ruby 访问 DOM :如何正确安装 gems?

Accessing DOM using Opal Ruby : how to install gems properly?

我想在 Opal Ruby 的帮助下测试一些简单的 SVG 动画,Opal 作为 Ruby 到 Javascript 转换器。

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

我的安装 (gems) 似乎很可疑。我错过了一些东西:

opal --compile test.rb > app.js 

Returns :

/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)

这里列出了 gem :

ls ~/.rvm/gems/opal/gems/ 

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

这是我的 ruby 测试:

require 'opal'
require 'opal-browser'

# prints ok on the browser console
puts "hello world".center(30,'=')

# prints ok on the browser console
(1..5).each{|i| puts "#{i*2}"}

#p $window.document.class

最后是我的 Html 代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>SVG Animation with Opal Ruby</title>
  </head>
  <body>
    <script src="app.js"></script>
    <svg id="svg_root" width="800" height="600">
      <circle id="circle" cx="100" cy="200" r=10 fill="blue" />
    </svg>
  </body>
</html>

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

截至目前,我们无法将 opal-browser 作为 Gem 发布。

请使用gem "opal-browser", github: "opal/opal-browser"