博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rails中的Controller Specific Assets
阅读量:6907 次
发布时间:2019-06-27

本文共 805 字,大约阅读时间需要 2 分钟。

hot3.png

默认下,pipeline就是加载一个大的application.js和application.css,这里最大的一个问题是,打开一个页面,不管要不要,都得把所有的js和css都加载,我感觉这很不妥,不说文件个头较大,还有可能出现冲突。所以我认为每个页面只要加载公共的js和css 及 这个页面所需的js和css即可,其实在guide中提到了一个方法,就是,但是只是简单的交代了一下,该怎搞,如下:

首先,改造application.js和application.css,将require_tree去掉,只明确地加载需要的公共文件。

第二,改造layouts/application.html.erb

<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %><%= javascript_include_tag params[:controller] %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %><%= stylesheet_link_tag params[:controller] %>

第三,在initializers/assets.rb中加上一段代码,让controller所对应的css和js文件能被预处理

Rails.application.config.assets.precompile += %w( users.js users.css )

只要这三步就可以了,然后放心大胆的在各controller相关的js和css中折腾,不管怎样都不会影响到其他的js和css了。

转载于:https://my.oschina.net/u/855913/blog/653909

你可能感兴趣的文章
leetcode - Remove Duplicates from Sorted List II
查看>>
如何解决 Windows 实例出现身份验证错误及更正 CredSSP
查看>>
hibernate.properties和hibernate.cfg.xml
查看>>
简说宽带商的弹窗广告进化及网站应对之策(DNS劫持进化论)
查看>>
3Sum Smaller
查看>>
.NET简谈自定义事务资源管理器
查看>>
【PM&数据】如何正确地利用产品数据【上】
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
安装DNS服务器
查看>>
DPM2012学习(一),安装DPM2012
查看>>
设计模式--装饰者理解
查看>>
文件迁移:将/home迁移到一个独立分区中
查看>>
网站seo如何利用指令查询网站收录
查看>>
Python语音识别终极指北,没错,就是指北!
查看>>
python脚本按表备份MySQL数据库
查看>>
【shell】Linux shell 之 打印99乘法表详解
查看>>
lvs 笔记
查看>>
实用技巧:在Linux下设置xhost方法步骤
查看>>
nio Selector 阻塞 唤醒 原理
查看>>