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');
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 */
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
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