web-dev-qa-db-fra.com

Désactivation de l'avertissement sur la fonction "require" dans JSHint

J'écris du code pour Node.js et j'utilise actuellement JSHint pour vérifier mon code. Cependant, lorsque j'utilise la fonction require pour importer des modules, cela dit:

'require' n'est pas défini.

Comment supprimer l'avertissement?

"use strict";
var express = require('express');   
var register = require('./routes/register');
49
somesh

jshint n'est pas au courant des globaux node.js par défaut, vous devez l'informer.

ajoutez ce commentaire en haut:

/* jshint node: true */

80
generalhenry

Nous pouvons définir node comme variable d'environnement global dans le fichier .jshintrc De JSHint

Cette option définit les globaux disponibles lorsque votre code s'exécute à l'intérieur de l'environnement d'exécution Node. Node.js est un environnement JavaScript côté serveur qui utilise un modèle piloté par événements asynchrone. Cette option ignore également certains avertissements qui ont du sens dans les environnements du navigateur mais qui n'ont pas de sens dans Node comme au niveau du fichier, utilisez des pragmas stricts et des instructions console.log.

Pour plus d'informations http://jshint.com/docs/options/#node

{
   "node": true
}

Des erreurs comme 'require' is not defined, 'console' is not defined, 'module' is not defined N'apparaîtront plus

56
Sridhar

Vous pouvez configurer JSHint en ajoutant "require" au .jshintrc fichier. Par exemple:

{
    "globals" : {
        "require": false
    }
}

Ou vous pouvez définir des globales par fichier spécifique uniquement en:

/* global require */

Pour plus d'informations sur la configuration de JSHint, veuillez lire Documentation JSHint

6
Vlad Bezden