【发布时间】:2015-12-25 13:13:58
【问题描述】:
就像您在 HTML 中包含来自 Bower 的 JS 文件而不指定每个脚本的 URL 一样,我想包含特定目录中包含的所有 JS 文件。 如何解决这个问题?可以有多个目录,JS文件可以位于指定目录的任意深度。
<!-- build:js({.tmp,app}) scripts/scripts.js -->
<script src="scripts/app.js"></script>
<script src="scripts/controllers/main.js"></script>
<script src="scripts/controllers/about.js"></script>
<script src="scripts/controllers/contact.js"></script>
<!-- endbuild -->
此示例代码来自一个 yeoman 生成的项目的 index.html。
scripts 目录位于app 目录中,该目录又指定为build:js 的参数。
据我所知,<!-- build:js({.tmp,app}) scripts/scripts.js --> 告诉wiredep 包含应用程序目录中的所有js 文件并创建一个连接文件scripts/scripts.js。
但是,当我删除<script> 标签并再次运行wiredep 时,它不会重新创建<script> 标签
<!-- build:js({.tmp,app}) scripts/scripts.js -->
<!-- endbuild -->
而如果我删除来自 Bower 的 JS 文件的脚本标签,然后wiredep 会重新创建它们。
【问题讨论】:
-
您可以在服务器上创建一个脚本来制作一个包含包含的长字符串。并在服务器上替换 html。但我更喜欢使用 require.js
-
我想在构建时执行此操作,而不是运行时。
标签: angularjs gruntjs yeoman wiredep grunt-wiredep