nat*_*vda 31 javascript ruby jquery ruby-on-rails unobtrusive-javascript
我的rails应用程序(全部是2.3.5)使用内联javascript,rjs,prototype和jquery的混合.让我们称之为学习或成长的痛苦.最近我越来越迷恋不引人注目的javascript.它使你的html干净,就像css清理它一样.
但我见过的大多数例子都是小例子,他们把所有javascript(jquery)放在application.js中
现在我有一个非常大的应用程序,我正在考虑如何构建我的js.我喜欢某种方式,我的脚本仍然靠近视图,所以我在想类似的东西
orders.html.erb
orders.js
Run Code Online (Sandbox Code Playgroud)
其中orders.js包含特定于该视图的不显眼的javascript.但也许这只是我过于保守:)
我看过耶胡达·卡茨一些职位,关于这个问题非常这里和这里,他铲球这个问题.它将遍历您的js文件,并仅加载与您的视图相关的文件.但唉,我找不到当前的实现.
所以我的问题:
content_for :script
或javascript_include_tag
在你的视图中加载相关的脚本.要么 ... ?简而言之:在rails中执行不显眼的javascript的最佳做法是什么?:)
Sam*_*ron 10
我认为没有一个最好的做法,但我会告诉你我做了什么.
我有一系列的js文件,每个文件都有自己的目的public/javascripts/
.一些例子可能是utility.js
chat.js
shopping_basket.js
等等.
我使用资产打包器并为我的所有常用功能定义一个大胖集合,为管理员功能定义另一个胖集合.往返服务器的成本太高了.我基本上将第一页上的所有j加载到一个blob中(通常)
我允许$(document).ready
在页面中内嵌基本钩子,并保持它们非常短.
我的js文件需要访问的数据与页面内联呈现.(通常在DOM中,有时作为变量 - 例如.var xyz = 100
)
我通常会使用javascript关闭开发我的控制器(并确保它一切正常),然后我将其打开并if request.xhr?
在需要的地方撒上一些.
请记住,Rail 3.1引入了内置的最佳实践,请参阅:http://guides.rubyonrails.org/asset_pipeline.html - 就个人而言,我遇到了新管道的性能和配置问题,但是其他许多人都有取得了巨大的成功.
归档时间: |
|
查看次数: |
3029 次 |
最近记录: |