質問するログイン新規登録

回答編集履歴

1

追記

2020/07/23 04:40

投稿

no1knows
no1knows

スコア3365

answer CHANGED
@@ -1,3 +1,33 @@
1
1
  jQuery → Bootstrap → jQueryとjQueryが2回読み込まれBootstrapのメソッドがキャンセルされている可能性が高いかと思います。
2
2
 
3
- なので、まずは該当ページで検証ツールを利用して`<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>`以外で、jQueryを読み込んでいないか確認することからはじめると切り分けがしやすいかと思います。
3
+ なので、まずは該当ページで検証ツールを利用して`<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>`以外で、jQueryを読み込んでいないか確認することからはじめると切り分けがしやすいかと思います。
4
+
5
+ ---
6
+
7
+
8
+ #追記:解決方法はわかったのですが、なぜそうなるのかがわかりません。おわかりになる方がいらっしゃればコメントなどで教えていただけると助かります。
9
+
10
+ 前提:
11
+ jQueryを2回読み込んでいない。
12
+
13
+ 解決方法:
14
+ ・erbに直接記載せず、application.jsなどに記載して`javascript_pack_tag`から読み込む
15
+ ・もしturbolinksを利用しているのならaddEventListenerを追加
16
+ ```JavaScript
17
+ //application.js
18
+
19
+ require("@rails/ujs").start()
20
+ require("turbolinks").start()
21
+ require("@rails/activestorage").start()
22
+ require("channels")
23
+ require("@fortawesome/fontawesome-free")
24
+
25
+ import 'bootstrap'
26
+ import '../stylesheets/application'
27
+
28
+ document.addEventListener("turbolinks:load", function(){
29
+ $(window).on('load', function () {
30
+ $('#modal_initial').modal();
31
+ });
32
+ })
33
+ ```