useminPrepare选项属性未定义

时间:2014-02-06 15:02:23

标签: gruntjs yeoman jshint grunt-usemin

当我从命令行运行grunt时,我收到了jshint错误。

    Running "useminPrepare:html" (useminPrepare) task
    Going through public/index.html to update the config
    Looking for build script HTML comment blocks
    Warning: An error occurred while processing a template (Cannot read property 'options' of undefined). Use --force to continue.

    Aborted due to warnings.

在我的gruntfile中,我有:

useminPrepare: {
  html: '<%= yeoman.app %>/index.html',
  options: {
    dest: '<%= yeoman.dist %>'
  }
},

而yeoman.dist在grunt.initConfig中定义:

yeoman: {
  // configurable paths
  app: require('./bower.json').appPath || 'public',
  dist: 'dist'
},

为什么我收到未定义错误的无法读取属性'选项'?

1 个答案:

答案 0 :(得分:4)

我遇到了同样的问题。我在gruntfile中配置了另一个错误的任务。 我重用了另一个没有定义对象的项目中的任务。

我从另一个项目:

<%= yeoman.dist %>

未在此项目中定义。

我通过使用--debug --verbose --force运行grunt来找到它,看看还有什么破坏了。破坏的任务可能有误。