Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Grunt包括文件名上的模板?_Node.js_Gruntjs - Fatal编程技术网

Node.js Grunt包括文件名上的模板?

Node.js Grunt包括文件名上的模板?,node.js,gruntjs,Node.js,Gruntjs,我当前的Grunt实现使用Grunt include将我的所有页面包装在页眉/页脚代码中。我正在寻找的是一种向页眉和页脚添加动态位的方法,以加载CSS/JS以及向body标记添加类,但我需要它们基于在grunt包含任务期间请求包含的文件的名称 如果我可以简单地让grunt includes将请求文件的名称传递到包含的文件中,我就可以完成所有需要完成的事情。在阅读grunt includes的文档时,我可以看到{{fileName}}和{{{file}}似乎有某种模板,但我似乎无法让它们工作 我想

我当前的Grunt实现使用Grunt include将我的所有页面包装在页眉/页脚代码中。我正在寻找的是一种向页眉和页脚添加动态位的方法,以加载CSS/JS以及向body标记添加类,但我需要它们基于在grunt包含任务期间请求包含的文件的名称

如果我可以简单地让grunt includes将请求文件的名称传递到包含的文件中,我就可以完成所有需要完成的事情。在阅读grunt includes的文档时,我可以看到{{fileName}}和{{{file}}似乎有某种模板,但我似乎无法让它们工作

我想澄清的是,当通过grunt运行grunt include时,如果一个名为myFile.html的文件有include global/myHeader.html行,那么在连接到myFile.html时,myFile或myFile.html会被传递到global/myHeader.html中

谁能给我指一下正确的方向吗?我已经转动轮子两天了

我当前使用的include函数如下所示:

includes: {
    files: {
        src: ['sources/*.html'], // Source files
        dest: 'app', // Destination directory
        flatten: true,
        cwd: '.',
        options: {
            silent: true,
        }
    }
},

模板设置位于文件对象的选项对象中。这是唯一可以使用{{file}}和{{fileName}}的地方。这意味着,如果不想将它们传递到请求的文件中,则必须将整个字符串放入不推荐的模板中,或者只将文件名传递到隐藏标记中,并使用JavaScript处理所需的任何动态

我建议改为使用grunt模板: