テクノロジー

【Rails】「Aタグのリンク」によるページ移動の際、JavaScript(ES6)のクラスが再定義されてしまう問題について

ゆうき's icon'
  • ゆうき
  • 2020/06/01 16:22
Content image

いつもながらの忘備録。

とりあえず、同一のエラーでお困りの方のために、検索キーワードをばら撒いておく。

 

Railsにて、「'クラス名'」のJavaciprtが入っている「***.html.erb」で、同期の(普通の)aタグのリンクを設置した際、

そのページから同一のページに移動したら、

Uncaught SyntaxError: Identifier 'クラス名' has already been declared

という意味不明な多重定義のエラーがコンソールに出現した(ページの更新では出現せず)。

そして、デバッグでよく見ると、同期でページ移動したにも関わらず、JavaScriptのメモリが開放されていない

(ES6であっても、普通はメモリの開放が起きる)

 

よくわからないので、mitaku師匠に聞いてみたら、(そんな設定はした覚えがないが)AJAXによる非同期通信が原因ではないかと言われた。

そして「Rails」の「turbolinks」というものは「同期のリンク」を「非同期のリンク」に置き換えていることが発覚

……なにこのイヤラシイ仕様。

(´∀`;)

 

ということで「application.js」と「layouts/application.html.erb」から「turbolinks」の項を削除

そうしたら、無事動くようになった。

(∩´∀`)∩

 

 

結論:

特別な理由がない限り「Rails」の「turbolinks」は無効にしておくべし。

 

Article tip 0人がサポートしています
獲得ALIS: Article like 68.72 ALIS Article tip 0.00 ALIS
ゆうき's icon'
  • ゆうき
  • @yuuki

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
クリプト

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

Like token Tip token
159.32 ALIS
Eye catch
テクノロジー

なぜ、素人エンジニアの私が60日間でブロックチェーンゲームを制作できたのか、について語ってみた

Like token Tip token
270.93 ALIS
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

Like token Tip token
121.79 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

Like token Tip token
38.31 ALIS
Eye catch
他カテゴリ

機械学習を体験してみよう!(難易度低)

Like token Tip token
124.82 ALIS
Eye catch
テクノロジー

彼女でも分かるように解説:ディープフェイク

Like token Tip token
32.10 ALIS
Eye catch
ゲーム

ドラクエで学ぶオーバフロー

Like token Tip token
30.10 ALIS
Eye catch
テクノロジー

オープンソースプロジェクトに参加して自己肯定感を高める

Like token Tip token
85.05 ALIS
Eye catch
テクノロジー

iOS15 配信開始!!

Like token Tip token
7.20 ALIS
Eye catch
クリプト

Uniswap v3を完全に理解した

Like token Tip token
18.92 ALIS
Eye catch
他カテゴリ

ALISのシステム概観

Like token Tip token
5.00 ALIS
Eye catch
クリプト

約2年間ブロックチェ-ンゲームをして

Like token Tip token
161.20 ALIS