自从 rails 3开始就开始导入asset pipeline, 让我们一起来看看这个有什么作用。
1. 自动将很多的js 文件 和 css 文件各自结合成一个文件。
比如在你的assets/javascripts/下面有 orders.js.coffee, carts.js.coffee, applications.js.coffee
assets pipeline 会自动将这个三个文件结合成 application.js.coffee
那为什么要这么做了, 很简单,就是为了加快界面的相应速度,大家都知道如果有很多Javascript 独立文件的话,
系统要发送多次http request。
2. 第二个作用就是压缩文件, 作用还是减少数据量,加快界面的相应速度。
3. 最后就是在文件后添加hash数值
<link href="/assets/application-412fe22651f4486c51e54176003a9f57.css" media="screen" rel="stylesheet" type="text/css" /> <script src="/assets/application-3e3a5167191afa70c7b72440eee7dd40.js" type="text/javascript"></script>
这些hash数值的作用就是cache 用的, 系统每次检查这些hash数值,如果没有发生变化的, 浏览器就会继续使用cache里面的东西。
如果hash数值发生变化的,浏览器就会加载最新的代码。