当尝试在AngularJS应用程序中打包字体时,grunt build会给出错误代码:EISDIR

2 angularjs gruntjs yeoman

grunt build我的AngularJS应用程序grunt-rev处理字体时遇到问题.它会创建很好的字体文件夹,但不会在其中放置任何字体.这是它给我看的内容.

Running "rev:dist" (rev) task dist/scripts/scripts.js >> a3e641ec.scripts.js dist/styles/main.css >> 970b8797.main.css Warning: Unable to read "dist/fonts/Aller" file (Error code: EISDIR). Use --force to continue.

grunt-rev 在我的 Gruntfile.js

rev: {
      dist: {
        files: {
          src: [
            '<%= yeoman.dist %>/scripts/{,*/}*.js',
            '<%= yeoman.dist %>/styles/{,*/}*.css',
            '<%= yeoman.dist %>/images/{,*/}*.{png,jpg,jpeg,gif,webp,svg}',
            '<%= yeoman.dist %>/styles/fonts/*'
          ]
        }
      }
    }
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

小智 14

我终于通过使用双星号**方法以递归方式匹配所有子目录来解决此问题.我不知道为什么我的原始Gruntfile.js中没有使用该方法.相反,它使用了{,*/}*由于某种原因递归不起作用的.所以这是rev我的Gruntfile.js中的新对象

rev: {
      dist: {
        files: {
          src: [
            '<%= yeoman.dist %>/scripts/**/*.js',
            '<%= yeoman.dist %>/styles/**/*.css',
            '<%= yeoman.dist %>/images/**/*.{png,jpg,jpeg,gif,webp,svg}',
            '<%= yeoman.dist %>/fonts/**/*.ttf'
          ]
        }
      }
    },
Run Code Online (Sandbox Code Playgroud)

  • 您应该将此标记为已接受的答案. (2认同)