gazay/gon: Your Rails variables in your JS
https://github.com/gazay/gon

検証環境

検証日: 2018/05/10
debian 9.4
rails 5.1.5
Bundler version 1.16.1
gon v6.1.0

手順

1. gemの追加

Gemfile
gem 'gon'
bundle install

2. テンプレートに記述

JSファイルよりも前に記述する

app/views/layouts/application.html.erb
<%= Gon::Base.render_data %>

3. Controllerに変数をセット

def index
  gon.str = 'Hello World'
end

4. JSから読み込む

application.js
console.log(gon.str);

仕組み

gonがHTMLにグローバル変数を宣言してくれてました。

<script>
//<![CDATA[
window.gon={};gon.str="Hello World";
//]]>
</script>
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.