在JSHint中禁用有关"require"功能的警告

som*_*esh 52 require node.js jshint

我正在为Node.js编写一些代码,我目前正在使用JSHint检查我的代码.但是,当我使用该require函数导入模块时,它说:

'require'没有定义.

我怎么能抑制警告?

"use strict";
var express = require('express');   
var register = require('./routes/register');
Run Code Online (Sandbox Code Playgroud)

gen*_*nry 82

jshint默认不知道node.js全局,你需要通知它.

将此评论添加到顶部:

/* jshint node: true */


Sri*_*har 57

我们可以node在JSHint的.jshintrc文件中设置为全局环境变量

当您的代码在Node运行时环境中运行时,此选项定义可用的全局变量.Node.js是一个服务器端JavaScript环境,它使用异步事件驱动模型.此选项还会跳过一些在浏览器环境中有意义的警告,但在Node中没有意义,例如文件级使用strict pragma和console.log语句.

有关更多信息,请访问http://jshint.com/docs/options/#node

{
   "node": true
}
Run Code Online (Sandbox Code Playgroud)

类似错误'require' is not defined,'console' is not defined,'module' is not defined将不会出现任何更


Vla*_*den 7

您可以通过向.jshintrc文件添加"require"来配置JSHint .例如:

{
    "globals" : {
        "require": false
    }
}
Run Code Online (Sandbox Code Playgroud)

或者您只能通过以下方式为每个特定文件定义全局变量

/* global require */
Run Code Online (Sandbox Code Playgroud)

有关如何配置JSHint的更多信息,请阅读JSHint文档