経緯
社内でrails6を使っていたのだが、javasqriptファイルを読み込ませる方法をpublic内に記載していた。
上司より「これだとセキュリティ的にまずい」とご指摘を受けたのでassets内で呼び出す、もしくはwebpackerで呼び出す方法を模索していた。
結論
assetsでjsファイルを呼び込む方法
- app/assets/javascriptsフォルダを新しく作る
- app/assets/javascripts/application.jsファイルを作る
- application.jsに
//= require_tree .
と記述 - app/assets/javascripts以下に読み込みたいファイルを持ってくる(今回はopenvidu_mix/app.js)
- viewにて
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
<script src="/assets/openvidu_mix/app.js"></script>
これで呼び出せる。
以上。
コメント