2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Rails6でJQueryが動かない

Last updated at Posted at 2021-06-10

#JQueryをインストール
Rails6でのJQuery導入方法はこちらを参照しました。

#JQueryが動かない
無事に動作確認(こちらを参照)を済ませ、application.jsファイルにJQueryを記述するも動かず...
Chromeの検証からConsoleを確認すると次のようなエラーが

Uncaught DOMException: Failed to execute 'querySelectorAll' on 'Document' 
//記述したJQueryコード
is not a valid selector.

動作確認はできているため、どうやらapplication.jsの読み込み時にエラーしている様子。
エラー文やネット上を調べていると、「$('クラス名')」の箇所でエラーが起きていると推測できました。

改めてapplication.jsの記載を確認すると、下記のようになっていました。

import Rails, { $ } from "@rails/ujs"
import Turbolinks from "turbolinks"
import * as ActiveStorage from "@rails/activestorage"
import "channels"
import ('jquery')

Rails.start()
Turbolinks.start()
ActiveStorage.start()

1行目の{ $ }がなにやら怪しい...と思い下記のように修正しました。

import Rails from "@rails/ujs" #ここを修正
import Turbolinks from "turbolinks"
import * as ActiveStorage from "@rails/activestorage"
import "channels"
import ('jquery')

Rails.start()
Turbolinks.start()
ActiveStorage.start()

これで無事に動きました!
import Rails, { $ } from "@rails/ujs" の行を触った覚えもなく、rails newで新しく立ち上げたプロジェクトにJQueryを導入して確かめましたが再現性はありませんでした...
この一行が記述された原因を特定することはできませんでしたが、解決することはできたので同じようなエラーでお困りの方の参考になれば幸いです!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?