Gruntjs 使用grunt从同一index.html创建多个支架

Gruntjs 使用grunt从同一index.html创建多个支架,gruntjs,yeoman,Gruntjs,Yeoman,我有一个index.html文件,其中列出了几个依赖项。我用约曼的发电机做脚手架。我想使用grunt任务创建几个多个分发版本,每个版本都有一个index.html,其中包括这些依赖项的不同子集 我正在使用usemin,但它不提供此功能。文件很多,而且在不断变化,所以手动忽略每个构建的文件是不可行的 我确信这可以通过多种方式实现,例如,通过对某些构建中要忽略的某些块进行定界(尽管我需要给它们命名,所以二进制是/否定界符(例如debug)不会切断它)。例如,如果该功能是由可以注意忽略块的东西提供的,

我有一个index.html文件,其中列出了几个依赖项。我用约曼的发电机做脚手架。我想使用grunt任务创建几个多个分发版本,每个版本都有一个index.html,其中包括这些依赖项的不同子集

我正在使用usemin,但它不提供此功能。文件很多,而且在不断变化,所以手动忽略每个构建的文件是不可行的

我确信这可以通过多种方式实现,例如,通过对某些构建中要忽略的某些块进行定界(尽管我需要给它们命名,所以二进制是/否定界符(例如debug)不会切断它)。例如,如果该功能是由可以注意忽略块的东西提供的,则使用builds dev、simple和dist:

<!doctype html>
<html>
    <head>
    <title>Clotho</title>

        <!-- build:css(css) styles/main.css -->
        <link rel="stylesheet" href="css/bootstrap.css">
        <link rel="stylesheet" href="css/main.css">
        <link rel="stylesheet" href="css/other.css">
        <!-- ignore:dist -->
        <link rel="stylesheet" href="css/another.css">
        <!-- endignore -->
        <!-- endbuild -->

</head>
<body>

    <header>...</header>

    <div class="container" id="mainContent"> ... </div>

    <!-- ignore:dist,simple -->
    <div class="container" id="devOnlyContent"> ... </div>
    <!-- endignore -->

    <footer>...</footer>

    <!-- SCRIPTS -->

    <!-- [libraries to be used by all] -->
    <script src="bower_components/jquery/jquery.js"></script>
    <script src="bower_components/angular/angular.js"></script>
    <script src="bower_components/lodash/dist/lodash.js"></script>
    <script src="bower_components/jquery-ui/ui/jquery-ui.js"></script>

    <!-- [scripts to be used by all] -->
    <!-- build:js scripts/shared-module.js -->
    <script src="scripts/app.js"></script>
    <script src="scripts/shared.js"></script>
    <!--endbuild-->

    <!-- ignore:dev -->
    <script src="productionOnlyScript.js"></script>
    <!-- endignore -->


    <!-- ignore:simple -->
    <!-- build:js scripts/advanced-module.js --> 
    <script src="scripts/_foundation/_kickoff.js"></script>
    <script src="scripts/_foundation/setup.js"></script>
    <script src="scripts/_foundation/clothoDirectives.js"></script>
    <script src="scripts/_foundation/extensions.js"></script>
    <!--endbuild-->
    <!-- endignore-->

</body>
</html>

克洛索
...
... 
... 
...
感谢您的帮助。

Yo可以使用有条件地包括依赖项(在单独的*.html部分中列出),具体取决于哪个grunt目标处于活动状态

另外,在谷歌搜索之后,我发现了这个:。

它应该提供相同的功能,而不需要使用单独的部分,这更好。

我希望grunt processhtml不必使用构建注释块,因为我已经在使用usemin,它以同样的方式工作,但grunt preprocess可以做到这一点。我以为我在某处看到过它,但当我再次查看时却找不到它。对于其他任何人,processhtml允许您指定自己的关键字,以便您可以将其与usemin结合使用