Sails js - Creates a copy of assets(sails js-创建资产的副本)
问题描述
我们正在考虑将项目移植到Sails.js。我们的静电资产相当大-超过3 GB。因此,这造成了一个严重的限制,因为它使我们的应用程序大小翻了一番。我们是否可以修改Sails js以防止此默认行为,或者是否有人可以推荐其他框架?
推荐答案
每次解除应用程序时,Sails都会使用Grunt将您的资产复制到(默认情况下)干净的.tmp/public文件夹中。这允许您挑选应该公开的资源,还允许您在不同的环境中编译和缩小资源。除非您将.tmp置于版本控制之下,否则这不一定会使您的应用程序大小翻倍,但如果您拥有大量资产,则肯定会使您的应用程序启动速度变慢。
这里最简单的解决方案是关闭Grunt,直接从Assets文件夹服务您的静电资产。要做到这一点,请执行以下操作:
- 删除Gruntfile.js(或将其重命名为Gruntfile.js.bak)
创建名为config/assets.js的新配置文件(或您喜欢的任何配置文件,名称无关紧要),并将以下内容放入其中:
module.exports = { paths: { public: __dirname+"/../assets" } };
将其放入新配置文件而不是config/local.js的原因是,local.js默认情况下位于您的.gitignore文件中,因此如果您使用Git进行版本控制,则每次在新计算机上安装应用程序时都必须重新创建该文件。
就像我说的,这是最简单的解决方案,但它有一些缺点:
- 不再在生产模式下自动编译/缩小资产
- 不再使用asset pipeline 自动链接Javascript/CSS文件
如果您希望保留这些功能,但仍要避免将大量文件复制到.tmp中,则解决方案在于修改默认的Grunt任务(这就是它们出现在您的项目中的目的!)。
这篇关于sails js-创建资产的副本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:sails js-创建资产的副本


- Flexslider 箭头未正确显示 2022-01-01
- Css:将嵌套元素定位在父元素边界之外一点 2022-09-07
- 如何使用 JSON 格式的 jQuery AJAX 从 .cfm 页面输出查 2022-01-01
- CSS媒体查询(最大高度)不起作用,但为什么? 2022-01-01
- Fetch API 如何获取响应体? 2022-01-01
- 400或500级别的HTTP响应 2022-01-01
- 失败的 Canvas 360 jquery 插件 2022-01-01
- 使用RSelum从网站(报纸档案)中抓取多个网页 2022-09-06
- Quasar 2+Apollo:错误:找不到ID为默认的Apollo客户端。如果您在组件设置之外,请使用ProvideApolloClient() 2022-01-01
- addEventListener 在 IE 11 中不起作用 2022-01-01