是否可以不在grunt中提及所有的脚本文件路径
Is it possible not to mention all the script file paths in grunt?
我正在使用gruntjs和usemin任务。我把这个添加到我的html文件:
<!-- build:js scripts/all.js -->
<script src="../../core/module.js"></script>
<script src="../../core/base/alerts/alert-item.js"></script>
<script src="../../core/base/alerts/alerts-list.js"></script>
<script src="../../core/base/base_model.js"></script>
<script src="../../core/base/cursor.js"></script>
<script src="../../core/...<another script>...."></script>
<script src="../../core/...<another script>...."></script>
<script src="../../core/...<another script>...."></script>
<script src="../../core/...<another script>...."></script>
<!-- endbuild -->
正如你所看到的,所有的脚本都位于../../core
中。我如何告诉usemin先取../../core/module.js
,然后取../../core/**/*
,而不提及每个文件
这可能吗?
对于grunt任务配置,您可以使用全局化模式动态构建文件列表。
看看gruntjs-doc中关于"Globbing模式"answers"动态构建文件对象"的连续两段:http://gruntjs.com/configuring-tasks#globbing-图案
如果您粘贴您的usimin任务配置,将有可能帮助您构建正确的模式
编辑:
基于注释和您不能控制所有代码的事实,usemin
的另一种选择是使用示例gruntfile中演示的"src"answers"dist"目录结构来处理批量移动/concat/uglify。
- 在源HTML中,引用grunt任务将在"dist"目录中生成的文件
- 更改后,将"src"中的文件
grunt-watch
配置为copy
、concat
和uglify
- 当您需要测试或上传到生产环境时,您可以在"dist"中进行测试,而不必担心在"src"中添加或更改了哪些脚本
- 如果您只是从另一个项目添加新文件,则可以创建并调用一个"构建"任务,该任务与
grunt-watch
在#3中执行的三个任务相同
如果你四处寻找,你可以在几个javascript框架中找到这种方法的例子,你可以根据自己的需要借用和修改这些框架。这篇文章可能有用。
原件:
基于这一点和你今天提出的另一个问题,听起来usemin可能不是满足你需求的合适工具。像require.js这样的东西会减少HTML中脚本标记的数量,但会将枚举它们的需要转移到不同的文件/位置。。。你的抱怨似乎是把所有的脚本都写成代码中的清单。
Grunt提供了一种大规模处理文件的方法,但在复制目录或进行其他类似的低风险批量工作时,最好使用这种方法。因此,您可以找到让usemin在没有逻辑的情况下进行批量加载的方法,但我建议"加载所有java脚本"通常是不好的做法。。。但如果这是你想要的,我会问你为什么大量连接和丑陋不是答案。
清单或显式列出文件的好处随着项目规模或复杂性的增长而变得更加明显。从目录中添加/删除文件的一个无辜错误可能会导致混乱,而且原因还不清楚。如果目录中缺少文件,则在HTML中显式列出文件会导致usemin
抛出错误。稍后,您还可以审核目录,查看即使不再使用,仍有哪些文件延迟。对他们进行金球奖并不能提供这两种好处。
如果没有清单,可以通过明智地使用VCS和审查自上次提交以来的更改来解决问题。。。但这并不像说"嘿,script.js被删除了,这导致usemin
呕吐,所以有人欠我一杯饮料,因为我替换了文件并使构建重新工作!"
- 如何在gull注入的脚本路径中删除路径前缀
- 是否可以不在grunt中提及所有的脚本文件路径
- 在JSP中包含java脚本路径
- dist中的GruntJS配置样式和脚本路径
- Java 脚本文件路径未由 SharePoint 标识
- 如何使用 Javascript 获取当前正在运行的脚本的路径
- HTML5 样板和循环渲染路径/引用脚本和样式
- 鲍尔脚本路径引用
- 节点.js相对需要执行脚本的路径
- 动态路径变量播放音频.mp3文件 如何?D3 JavaScript 咖啡脚本
- 如何避免在 js/ajax 脚本中对应用程序上下文路径进行硬编码
- 使用相对路径时无法加载chrome扩展内容脚本
- Illustrator-在文本路径脚本中批量插入文件名会导致Illustrator崩溃
- 外部js脚本中图像的相对路径
- 如何从他自己的js文件中找到脚本路径
- 将文件路径传递给php脚本
- Windows脚本主机查找/运行程序的变量路径使用正则表达式
- 为什么在获取脚本路径时使用自执行匿名函数?
- 添加脚本路径到xslt文件
- ASP.NET 复合脚本路径结果为 404