1

如前所述,让Grunt 在开发和生产中包含不同的 Javascript 文件,Grunt 为不同的设置生成 index.html

我希望扩展资产包括用于开发:

<script src="js/lib-1.js"></script>
<script src="js/lib-2.js"></script>
<script src="js/lib-3.js"></script>
...

对于生产或分期:

<script src="js/all-files-in-one.js"></script>

但是,我不想在两个地方同步我的包含代码。对于大多数可用的答案,我必须先在 grunt 任务中指定文件列表,然后在 html 中再次复制包含代码。我能找到的最接近的解决方案是这个答案:https ://stackoverflow.com/a/21488659/515585 ,我只需要在 grunt 任务中维护一组文件。所有的答案都需要大量的设置才能使其工作。

一个更好的解决方案是允许我使用 sprocket 语法在代码上下文中要求其他资产文件(而不是使用构建文件),就像 Rails 资产管道一样。并用一个变量开关来扩展它们,这样我就可以在开发中调试每个单独的文件。我查看了grunt-sprockets-directives,但我认为它没有提供扩展选项。也许会?

我不想使用我的后端框架中的资产管道,我要求任何前端构建工具,而不仅仅是专门的 grunt。Gulp、Yeoman 甚至更好的 Broccoli.js 答案也值得赞赏。

4

0 回答 0