Node.js用のコードをいくつか書いていますが、現在はコードをチェックするためにJSHintを使用しています。ただし、require
関数を使用してモジュールをインポートすると、次のように表示されます。
「必須」は定義されていません。
警告を抑制するにはどうすればよいですか?
"use strict";
var express = require('express');
var register = require('./routes/register');
jshintはデフォルトで、通知する必要があるnode.jsグローバルを認識しません。
このコメントを上部に追加します。
/* jshint node: true */
JSHintの.jshintrc
ファイルでnode
をグローバル環境変数として設定できます
このオプションは、コードがNodeランタイム環境内で実行されているときに使用可能なグローバルを定義します。Node.jsは、非同期イベント駆動モデルを使用するサーバー側JavaScript環境です。ブラウザー環境では意味がありますが、Nodeでは意味がありません。ファイルレベルでは、厳密なプラグマとconsole.logステートメントを使用します。
詳細情報 http://jshint.com/docs/options/#node
{
"node": true
}
'require' is not defined
、'console' is not defined
、'module' is not defined
などのエラーは表示されなくなります
.jshintrc
ファイルに「require」を追加することにより、JSHintを構成できます。例えば:
{
"globals" : {
"require": false
}
}
または、次の方法でのみ特定のファイルごとにグローバルを定義できます。
/* global require */
JSHintの構成方法の詳細については、 JSHint Documentation を参照してください。