ColdFusion Bundler和Minification

cod*_*pro 6 coldfusion bundler fw1

我正在寻找一个在我的ColdFusion网站上使用的捆绑器/缩小器.我搜索了一个多小时,并且只找到了适合cfWheels的插件.不幸的是,我们在这一点上与框架有关,因此我们不能使用该插件.

任何人都可以推荐使用ColdFusion FW1捆绑和缩小我们的js/css的方法吗?

我正在考虑从asp.net的System.Web.Optimization的捆绑器中"借用",但这对我来说似乎过度杀戮.

谢谢!

Bri*_*lli 4

我们最近也做出了同样的决定。最后,我们决定使用 Gulp,它是一个基于 Javascript 的任务运行器,您可以在开发中使用它,我的建议是您也这样做。Gulp 拥有庞大的社区和用户群以及大量的插件。它可以在您开发时监视文件的更改,并自动重新连接、缩小(以及大约 1000 个其他内容 - 请参阅http://gulpjs.com/plugins/)。

使用名为 gulp-rev 的 Gulp 插件,文件会自动重命名,例如 file-k34jzkl3.css,以便在进行更改时破坏浏览器缓存。使用另一个 gulp 插件 gulp-manifest,我们自动生成一个 JSON 文件,将原始 CSS 文件映射到缓存无效的名称(例如,“file.css”:“file-k34jzkl3.css”),然后我们有一个简单的 CFC将这些名称翻译到 HTML 中的正确位置。我们的清单 JSON 文件如下所示:

{
  "baseline.css": "/global/baseline-82bcd2ab92.css",
  "user.css": "/global/user-0d1d32170c.css"
}
Run Code Online (Sandbox Code Playgroud)

然后我们的 CFML 标记如下所示:

<link rel="stylesheet" href="#application.asset.getAsset("baseline.css")#">
Run Code Online (Sandbox Code Playgroud)

它会生成如下 HTML 输出:

<link rel="stylesheet" href="/global/baseline-82bcd2ab92.css">
Run Code Online (Sandbox Code Playgroud)

我使用https://github.com/ghidinelli/assets.cfc上的代码创建了一个存储库