javascript – Grunt,将html文件复制到脚本文件夹中

前端之家收集整理的这篇文章主要介绍了javascript – Grunt,将html文件复制到脚本文件夹中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在yeoman使用角发生器.在gruntfile.js中,/ app / views中的每个html文件都被复制到dist / views.但是我喜欢将指令模板与指令本身保持在同一个文件夹中.

例:

/app/scripts/widgets/mywidget.directive.js
/app/scripts/widgets/mywidget.tmpl.html

当我构建项目时,我希望html文件结束与上述相同的文件夹结构.

这应该在gruntfile.js的复制部分完成.

copy: {
  dist: {
    files: [{
      expand: true,dot: true,cwd: '<%= yeoman.app %>',dest: '<%= yeoman.dist %>',src: [
        '*.{ico,png,txt}','*.html','images/{,*/}*.{webp}','styles/fonts/{,*/}*.*'
      ]
    }...

我试图在src数组中添加它:

'<%= yeoman.dist %>/scripts/{,*/}*.tmpl.html'

不工作.有任何想法吗?

解决方法

您可以将所有.tmpl.html从app / scripts / *移动到dist / scripts / *,使用下面的gruntfile代码修改.
files: [{
          expand: true,src: [
            '*.{ico,'views/{,*/}*.html'
          ]
        },{
          // This block handles copying the .tmpl.html from app/scripts to dist/scripts
          expand: true,cwd: '<%= yeoman.app %>/scripts',dest: '<%= yeoman.dist %>/scripts',src: '{,*/}*.tmpl.html'
        }
       ...

您将要将新目录添加到usemin块中,以确保将filerev更新成为您的模板

usemin: {
      html: ['<%= yeoman.dist %>/{,*/}*.html','<%= yeoman.dist %>/scripts/{,*/}*.html'],...

您也可能希望将目录添加到htmlmin以将其缩小为html

htmlmin: {
  dist: {
    ...
    files: [
      {
        expand: true,cwd: '<%= yeoman.dist %>',src: ['*.html','scripts/{,dest: '<%= yeoman.dist %>'
      }
    ]
  }

更新这些脚本现在反映了将任何.tmpl.html从app / scripts / * /移动到dist / scripts / * /.如果您的文件夹结构在脚本内部不止一层,请将{,* /} * .html转换为** / * .html

猜你在找的JavaScript相关文章