RailsからJavaScriptへ配列の渡し方がわからなかったので、調べた結果のメモです
解決方法
Rails側の配列を一旦Jsonにし、JavaScript側でそのJsonをパースし配列にしました
受け渡しには inputタグ
を使いました
Rails側のコード
rails
def index
@arr = ["りんご", "ゴリラ", "ラッパ", "パイナップル"]
# 配列をJsonへ変換する
@arr_json = @arr.to_json.html_safe
end
html.erb側のコード
html.erb
<input name="arr_json" type="hidden" value=<%= @arr_json %> class='arr_json'/>
JavaScript側のコード
js
// arr_json取得
var arrJson = $('.arr_json').val();
// arr_jsonをパースし配列にする
var arr = JSON.parse(arrJson);
// 確認用のログ出力
console.log(arr);