URLSearchParamsを使うと、こんなかんじになりました。
searchParams = JS.eval 'return new URLSearchParams(location.search)' if searchParams.has('phrase') == JS.eval('return true;') phrase = searchParams.get('phrase').to_s set phrase, template end
新しく課題が見つかりました。
- JavaScriptのオブジェクトをつくるのに
JS.eval
が必要。JS.global.URLSearchParams.new
と書きたいです。 - JavaScriptの判定結果をJavaScriptのtrueと比較しないと常に真になる。
JS::TRUE
があるとうれしい?それともto_b
メソッドがいい?どっちかっていったらto_b
メソッドかな? to_s
を付け忘れがち。これは何もアイデアはありません。