在Meteor应用程序中使用appcache
我在我的Meteor应用程序中启用了appcache
( http://docs.meteor.com/#/full/appcache )。
但服务器控制台说,我的caching资源的总大小是10.2MB。
从文档看,我必须排除一些文件,因为它们太大了
Meteor.AppCache.config({ onlineOnly: [ '/bigimage.jpg', '/largedata.json' ] });
问题是我不知道哪些文件太大。 我保持我的文件尽可能分裂,并且由于样式表和JavaScript文件被缩小,我不认为他们使用很多资源。
我的应用程序中没有任何图像或其他特殊文件。 这是纯粹的JS和HTML(甚至没有CSS)。
编辑
我试着检查chrome://appcache-internals/
从中我得到以下的细节
http://localhost:3000/ Manifest: http://localhost:3000/app.manifest Size: 10.3 MB Creation Time: Thu Oct 22 2015 08:51:07 GMT+0200 (Romance Daylight Time) Last Access Time: Thu Oct 22 2015 10:16:37 GMT+0200 (Romance Daylight Time) Last Update Time: Thu Oct 22 2015 10:16:36 GMT+0200 (Romance Daylight Time) Remove Item View Details
当我点击View Details
,我会得到一长串caching的文件。
这些JavaScript文件大于1MB:
http://localhost:3000/packages/aldeed_autoform.js?019cba9c67d18d17c34ea48a455d8956ded05487 1.1 MB Explicit http://localhost:3000/packages/aldeed_tabular.js?b5a33bda4b2c2ddbf08d97504162570faea3b826 1.9 MB Explicit http://localhost:3000/packages/jquery.js?1015953f785c9b76503e2ecb391507dce965f357 1.2 MB Explicit
但他们都是外部的图书馆,所以我不知道该怎么办。 不应该所有的JS文件被缩小?
我有
standard-minifiers # JS/CSS minifiers run for production mode
在我的packages
但是,我不确定他们是否在本地主机上未被注册,但在上传到服务器时被缩小了?
meteor将所有这些客户端的javascript和css文件(包括来自第三方包的文件)发送到开发模式,这就占用了大量的空间,因此appcache包的误导性警告。
但是在生产模式下,更好的是通过部署构build,可以将它们连接,缩小和压缩。
所以为了真正知道你的客户端caching会变成什么样子,你应该做一个meteor build
并检查实际的生产文件大小。
你会高兴地看到,它只是你的开发版本的一小部分。
不过要注意图片等静态资产!