6

我正在寻找在我的 ColdFusion 站点中使用的捆绑器/压缩器。我搜索了一个多小时,只找到了适合 cfWheels 的插件。不幸的是,我们现在绑定到框架一,所以我们不能使用那个插件。

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

我正在考虑从 asp.net 的 System.Web.Optimization 的捆绑器中“借用”,但这对我来说似乎太过分了。

谢谢!

4

1 回答 1

4

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

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

{
  "baseline.css": "/global/baseline-82bcd2ab92.css",
  "user.css": "/global/user-0d1d32170c.css"
}

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

<link rel="stylesheet" href="#application.asset.getAsset("baseline.css")#">

这会生成 HTML 输出,例如:

<link rel="stylesheet" href="/global/baseline-82bcd2ab92.css">

我使用https://github.com/ghidelli/assets.cfc的代码创建了一个仓库

于 2015-10-06T01:37:46.270 回答