問題タブ [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.
javascript - Ruby Opal コードのエラー行を取得する
明らかに、このスニペットは 8 行目でクラッシュします。これを Opal で解析すると、次のコンパイル済みコードが得られます。
もちろん、同じエラーがスローされます。
しかし、このエラーが発生したRuby行を特定する方法はありますか?
私はこの質問を見ることができます: Is there a way to show the Ruby line numbers in javascript generated by Opal , しかし、私は答えを理解していません: https://github.com/opal/opal/tree/0につながります-6-stable/examples/rackで、何を見たり、何をしたりしているのかわかりません。
JavaScript を実行すると、index.html
読み込まれるファイルがopal.min.js
ありopal-parser.min.js
、最後にコンパイル済みの Ruby-Javascript コードが<script>
タグに含まれます。
ruby-on-rails - サーバー側の Ruby をレールの opal ファイルに埋め込む
サーバー側の Ruby を Opal .js.rb ファイルに埋め込むことは可能ですか? 言い換えればUser.find(1)
、.erb で行うように、Rails の一部の opal ファイルにアクセスする必要があります。
javascript - Ruby コードを JavaScript に変換しようとしているときにエラーが発生しました
Rubyコードをjavascriptに変換するためにOpalを使用しようとしています。最初はかなり有望に見えましたが、私のクラスではうまくいきません。私には意味をなさない以下のエラーが表示されます。
これは、javascriptに変換しようとしているrubyファイルへの要点リンクです: query_builder.rb
これは、Ruby インタープリターで問題なくコンパイルされます。opal が互換性のないバージョンの ruby を使用しているのか、それともどうなっているのかはわかりません。しかし、私のコードはかなり標準的な Ruby です。どんな助けでも大歓迎です。前もって感謝します。
opalrb - Opal.rb ブリッジ クラスの内部メカニクス
ネイティブ クラスへのブリッジングが内部的にどのように機能するかを知りたいです。(それに関するドキュメントは見つかりません)。
function NativeClass() { this.foo = "bar"; }
class MyClass <
NativeClass; end
ES6またはcoffeescriptの継承に似ていますか(JSの観点から)?
通常のメソッドのように呼び出すことができる関数のメソッドを定義することは可能ですか (次のように:
RubyClass
`.prototype`.foo = function(){RubyClass インスタンスの @accessor を返す} ) not the
.$foo`.
後もう一つ。Ruby クラスがネイティブ クラスから継承している場合、その関数内でインスタンス化される Foo クラスのインスタンスを参照することは可能ですか?function(){this.bar = Foo's instance}?
(ネイティブから継承された) Ruby クラスからネイティブ クラスを返すことは可能ですか (たとえば、一部の JS ライブラリが引数としてネイティブ クラスを必要とする場合)。
javascript - 開始を使用しますか? opal-browser からのメソッド
このjsコードをrubyコードに翻訳しようとしています
document.ontouchstart ? 'touchstart' : 'click';
ブラウザー機能を取得するために opal-browser を使用しています。私の現在の試みはこれです:
touch = Browser::Event::Touch.new
puts touch.start?
ただし、これはエラーを返します: Uncaught TypeError: Cannot read property 'type' of undefined
エラー トレースを確認したところ、Touch クラスの name プロパティが見つからないためにエラーが発生しているようです。
Opalコミュニティがここで私を助けてくれることを願っています
opalrb - getsctipt (または xhr'ed および evaled) を介してクライアントから呼び出された Opal ファイルを評価して使用することはできません
opal スクリプトを xhr して、そこに定義されている ruby コードを使用したいと考えています。$.getScript で取得してみました。しかし、私にとっては成功しません。
さらに、スクリプトは (奇妙な方法で) 評価されます。つまり、コンソールから Opal.modules["file_i_required"] を呼び出すことができ、基本的にコンパイルされたコードが返されます。
しかし、その内部では何も評価されず(console.logsはありwindow["foos"] = #{something}
ません)、そのファイルから何も参照できません。
何か助けはありますか?
ruby-on-rails - Ruby: Web ブラウザーから Gosu ゲームを実行する
だから私がやりたいことはこれです:
- ユーザーが www.website.com にアクセス
- 「ゲームをプレイ」というボタンがあります
- Gosu ゲーム (既に作成済み) がウィンドウを起動します。
- ユーザーはゲームをプレイできます。
だから多分それは次のようになります:
私は周りを読んでいて、Jrubyを使ってそれをだまして実行させる方法があるかもしれないことを見てきました. また、Opal を使用して Ruby コードを JS に再コンパイルし、何らかの形でそのように実行するのは良い考えかもしれないと考えていました。
しかし、混乱を避けるために、質問は次のとおりです。上記の手順を実装することは可能ですか? 回答ありがとうございます。
client - VoltRB で Chronic または ChronicDuration を使用した人はいますか?
chronic
とのchronic_duration
宝石を に入れましたがGemfile
、すべてが で正常に動作しvolt console
ます。ただし、クライアント側で何かしようとすると、名前エラーが発生します。クライアント側の初期化子でそれらを要求しようとしましたが、それは役に立ちませんでした。
任意のヒント?
html - Ruby と HTML コードのリンク
タグの間にコードを挿入することで、Javascript コードを HTML ドキュメントに実装できることは承知しています。Ruby で<script></script>
これを行う同様の方法はありますか?