問題タブ [turbo]

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 に答える
42 参照

ruby-on-rails - ターボ フレームを使用した Rails アクティブ リンクのスタイリング

私は次のようにリンクを作成しました:

g.titleリンクをクリックした結果が別のフレームに表示される 場合、アクティブなリンク (アクティブな用語集) をスタイルするにはどうすればよいですか?ここに画像の説明を入力

現在のパスが要求されたパスと等しい場合、ヘルパーを使用してリンクにクラスを提供しようとしましたが、機能していません。リンクする「アクティブな」クラスが指定されていません:

現在のパスがブラウザのアドレスバーに表示されないフレームで作業する場合、data-turbo-action" => "advance". そのブラウザでは、アドレスバーに現在のパスがありますが、リンクには「アクティブな」クラスがありません..

0 投票する
1 に答える
23 参照

ruby-on-rails - Turbo Drive で Capybara の機能仕様が失敗する

Rails 6.1 アプリのいくつかのページに Turbo Drive を導入する実験を行っています。

Ḯ いくつかのレガシー JQuery プラグインの初期化を呼び出しから$(document).ready()呼び出しに移動した後、期待どおりになりましたdocument.addEventListener('turbo:load', ..)

ただし、Capybara 機能仕様を実行しているときに、失敗した仕様のスクリーンショットから、JQuery プラグインが初期化されていないことがわかります。失敗するテストの典型的な例:

これが機能仕様で機能しない理由を理解するのを手伝ってくれる人はいますか? turbo:loadイベントがまったくトリガーされていないように見えます。


私が試したこと

ブラウザのログを確認する

ドライバーでのログ記録を有効にします。

Selenium::WebDriver::Remote::Capabilities.chrome( "goog:loggingPrefs": { browser: 'ALL' } ).

..しかしpage.driver.browser.manage.logs.get(:browser)、失敗したexpect呼び出しの直前に呼び出すと、空の配列が返されます。

おそらく私はそれを間違っていますか?

ページの読み込みが完了する前にカピバラがタイムアウトしないようにする

Capybara.default_max_wait_time = 10