Turbolinks5以前なら(現在はturbolinks-classicと呼ぶらしい)、無効にするのもありだと思います。
しかし、Turbolinks5以降なら絶対に利用をオススメします。
ボタンを押すたびに画面が初期化され、一旦真っ白になって、スクロールは初期値に移動、
再度jsやらcssを読み直すサイトを利用したいですか?
個別にajaxを設定しても、戻るボタンで、直感的に前の画面に戻らないとかイラっとしますよね。
実は、Turbolinks5が全部やってくれています。
それをTurbolinks5を使わずに実装しようとすると、結構骨が折れます、で結局ライブラリを作り出したり
するんですよw
Turbolinks5はRailsにもJqueryにも依存しないライブラリになっており
依存関係を気にしなくてよく大変使いやすいです。
おそらく、Turbolinks5と関係のない解説のjsを直接コピーして、
あれ、動かないということになっているのだと思いますが。
基本的に発火を
javascript
1document.addEventListener("turbolinks:load", function() {
2 // ...
3})
とおくだけですし
Turbolinks5の完成度は
Railsからずれていなければ、Turbolinks5の存在に気づかないまま
ソフトが完成した、みたいなことが起きるレベルです。
turbolinks-classicでは色々苦労しましたが…。orz
現在は、かなり細かくイベント制御ができますし、
data-turbolinks="false"と書くだけで、その下部のリンクの
turbolinksを無効化することもできます。
もちろん、業務システムですし
描画効率 > 保守性、安定性 より 描画効率 < 保守性、安定性
という気持ちはわかります。
しかし、そもそものjavascriptを十分に理解しないで使うと
javascriptを無理に使って振り回されるという状況が必ずおきます。
だからこそ、既存のライブラリを使って、javascriptをこねくり回さないのが
結果的に振り回されないようになるのではないでしょうか
今回の場合、全体を無効にするより、心配な重要ページのリンクにdata-turbolinks="false"を入れるだけで、十分だと思いますよ。
Railsのライブラリは基本空気のようなものです。
問題がおきなければ、存在に気づかないまま、一生を終えることもあります。←さすがにそれはないかw
しかし、必ず、必要な部分では無効にしたり、細かい制御が可能ですので。
酸素は火事の原因になるから、酸素を除去するみたいなことは言わないでください。
Turbolinks5への理解は参考に以下のサイトの内容をよめば十分かなと…
参考サイト
参考サイト
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/19 03:36