web-dev-qa-db-ja.com

JSHint(r10): 'angular'は定義されていません

私は次のものを持っています:

angular.module('test')
    .controller('TestMenuController',
    [
        '$http',
        '$scope',
        '$resource',
        '$state',
        'os',
        'us',
    function (
        $http,
        $scope,
        $resource,
        $state,
        os,
        us) {

VS2014でこれをビルドすると、次のようなエラーメッセージが表示されます。

JSHint (r10): 'angular' is not defined. 

このメッセージが表示されないようにする方法を教えてもらえますか?

39

これに取り組む1つの方法は、.jshintrcおよびangularを事前定義変数の1つとして設定します(Jayanthaが言ったように)。

.jshintrcは次のようになります。

{
  "predef": ["angular"]
}
90
Nicholas Pufal
  • 1つのアプローチは、構成オプションのグローバル変数として「角度」を追加することです。
  • または、config options 'jshintrc' pathを 。jshintrc に設定することにより
  • ドキュメント (jshintオプションを設定するさまざまな方法)

あなたがうなり声を使用している場合..

  //------------------------//
  // jshint
  //------------------------//
  /**
   * JSHint: configurations
   * https://github.com/gruntjs/grunt-contrib-jshint
   */
  jshint: {
    options: {
      jshintrc: '.jshintrc',
      jshintignore: '.jshintignore',
      reporter: require('jshint-stylish')
    },
    gruntfile: {
      src: 'Gruntfile.js'
    },
    scripts: {
      src: '<%= project.scripts %>/**/*.js'
    },
    all: [
      'Gruntfile.js',
      '<%= project.js %>/*.js',
      '<%= project.scripts %>/**/*.js',
      'test/**/*.js'
    ]
  },

.jshintrc(root dir)には次のオプションが含まれています

{
  "curly"   : true,
  "eqeqeq"  : true,
  "undef"   : true,
  "jquery"  : true,

  // global variables
  "globals": {
    "angular"   : false,
    "jasmine"   : false,
    "$"         : false,
    "_"         : false,
    "module"    : false,
    "require"   : false
  }
}

お役に立てれば。

13
daxeh