Javascript 未定义定义(ESLint)

Javascript 未定义定义(ESLint),javascript,requirejs,eslint,Javascript,Requirejs,Eslint,我一直收到一个ESLint错误“define”未定义。(无未定义)。我相信,我可以全局定义define,但这不应该在本地得到支持吗 使用define的代码示例: define([], function () { // Error here! 'use strict'; .... 这是我的eslintrc.json: { "env": { "shared-node-browser": true, "commonjs": true }

我一直收到一个ESLint错误
“define”未定义。(无未定义)
。我相信,我可以全局定义
define
,但这不应该在本地得到支持吗

使用define的代码示例:

define([], function () { // Error here!
    'use strict';
    ....
这是我的eslintrc.json:

{
    "env": {
        "shared-node-browser": true,
        "commonjs": true
    },
    "plugins": ["requirejs"],
    "extends": ["eslint:recommended"],
    "rules": {
        "indent": [
            "error",
            "tab"
        ],
        "linebreak-style": [
            "error",
            "windows"
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "error",
            "always"
        ],
        "requirejs/no-invalid-define": 2,
        "requirejs/no-multiple-define": 2,
        "requirejs/no-named-define": 2,
        "requirejs/no-commonjs-wrapper": 2,
        "requirejs/no-object-define": 1
    }
}

.eslintrc.json
集中:

"env": {
    "amd": true
},
打开“amd”环境时,eslint为
define
require
注册全局变量


我也会关闭
“commonjs”
环境,除非你真的将AMD和commonjs混合在同一个代码库中。

它不会被本地定义,因为每个人都有不同的期望和要求。这就是为什么会有一个
.rc
文件,这样每个人都可以指定自己的全局需求。所以,是的,只需在配置文件中添加一个globals部分。