
Una de las muchas ventajas que tiene ruby on rails es que junta todos los archivos de javascript dentro de la carpeta de assets en uno solo, haciendo mucho más rápida la carga y transferencia cuando se encuentra en un entorno de producción. La desventaja de juntar todos los archivos es que en algunos casos podríamos querer que un javascript se ejecute únicamente en una página específica, o sea exclusivamente para un controller y para una página específica. Hay varias formas de resolver este problema, pero hasta el momento la más sencilla que he encontrado es ocupando la gema LoadJS https://github.com/guidomb/loadjs Para ocuparla basta con agregar la gema al gemfile
gem 'loadjs'
Luego realizar un bundle y reiniciar el servidor. El siguiente paso es cambiar la linea de código del layout (o layouts) donde está la etiqueta body, por la siguiente:
<body data-controller="<%= controller.controller_path %>" data-action="<%= controller.action_name %>">
Dentro de asseets/javascript/application.js hay que cargar loadjs
//= require loadjs
y finalmente, el javascript que queramos que se ejecute específicamente en un vista y una acción, tenemos que envolverlo con
load("foo#bar", function (controller, action) { alert("Hello World!"); });
Obviamente cambiando foo#bar por el controller#accion correspondientes. Existe sólo un gran contra en esta solución, que expone el nombre de los controller y de las acciones en el código, no es grave pero es bueno que estés consciente de la información que estas exponiendo.
Advertencia: Turbolinks no será tu amigo, la gema de jquery-turbolink te ayudará en el proceso:
- Mainkan Pertandingan Daring Mahjong Untuk Mendapatkan Uang - June 7, 2025
- No Deposit Bonuses Available for Gamstop Players Revealed and Analyzed - May 30, 2025
- Most Bet ile Bahis Dunyasinda Ugura Nail Olun - April 13, 2025
- En Yaxsi Bahis Tecrubesi Mostbet ile - April 13, 2025
- Mostbet Turkiye: En Guncel Bahis Oranlari - April 11, 2025
- Mostbet 315 login for exciting live dealer games - April 11, 2025
- Tecrubenizi Most Bet Merc Platformasi Ile Tekmillesdirmek Ucun Tovsiyeler - April 11, 2025
- Kazanma Sansinizi Artirmak Icin MostBet ile Bahis Yapma Yontemleri - April 9, 2025
- Mostbet ile guvenli ve adil oyun - April 8, 2025
- Updated login for Mostbet casino - April 6, 2025
Leave a Reply