3

Rails 5で行っていたように、フロントエンドを整理しようとしています。関数を含むいくつかのjsファイルがあり、必要に応じてコードのさまざまな場所でこの関数を使用しました。しかし、Rails 6 での js の操作はまったく異なります。とにかく、packs と webpacker についての主要なアイデアが得られたと思います。しかし、カスタム js 関数を使用するにはどうすればよいでしょうか。あるファイルに書き込んで別のファイルで使用しますか? やり方はあるはずです。

たとえば、いくつかのカスタム js パックがあります。

app/javascript/packs/custom_pack_with_functions.coffee :

console.log 'hey'

@hi = () ->
  console.log 'HI'

そして、そのhi機能が私の見解で利用可能になることを期待しています。

some_view.html.slim :

= javascript_pack_tag 'custom_pack_with_functions'

javascript:
  hi()

しかし、適切なページに来ると、コンソールに次のメッセージのみが表示されます。

hey
ReferenceError: hi is not defined

hiどこからでも使えるように関数を定義するには?

4

1 に答える 1