Node.js 将ESLint与sublime集成时出错

Node.js 将ESLint与sublime集成时出错,node.js,npm,sublimetext3,eslint,Node.js,Npm,Sublimetext3,Eslint,我不熟悉Node.js、npm和sublime环境,我发现很难将ESlint与sublime编辑器集成 我遵循的步骤如下: 使用以下命令安装ESLint:npm安装-g ESLint 已安装ESLint,带有Sublime软件包控制 现在在Sublime编辑器中出现以下错误: module.js:327 throw err; ^ Error: Cannot find module 'eslint' at Function.Module._resolveFilename

我不熟悉Node.js、npm和sublime环境,我发现很难将ESlint与sublime编辑器集成

我遵循的步骤如下:

  • 使用以下命令安装ESLint:
    npm安装-g ESLint
  • 已安装ESLint,带有Sublime软件包控制
  • 现在在Sublime编辑器中出现以下错误:

    module.js:327
        throw err;
        ^
    
    Error: Cannot find module 'eslint'
        at Function.Module._resolveFilename (module.js:325:15)
        at Function.Module._load (module.js:276:25)
        at Module.require (module.js:353:17)
        at require (internal/module.js:12:17)
        at Object.<anonymous> (C:\Users\MyUser\AppData\Roaming\Sublime Text 3\Packages\ESLint\linter.js:12:17)
        at Module._compile (module.js:409:26)
        at Object.Module._extensions..js (module.js:416:10)
        at Module.load (module.js:343:32)
        at Function.Module._load (module.js:300:12)
        at Function.Module.runMain (module.js:441:10)
    [Finished in 0.2s with exit code 1]
    
    module.js:327
    犯错误;
    ^
    错误:找不到模块“eslint”
    在Function.Module.\u解析文件名(Module.js:325:15)
    在Function.Module.\u加载(Module.js:276:25)
    at Module.require(Module.js:353:17)
    根据需要(内部/module.js:12:17)
    反对。(C:\Users\MyUser\AppData\Roaming\Sublime Text 3\Packages\ESLint\linter.js:12:17)
    在模块处编译(Module.js:409:26)
    在Object.Module.\u extensions..js(Module.js:416:10)
    在Module.load(Module.js:343:32)
    在Function.Module.\u加载(Module.js:300:12)
    位于Function.Module.runMain(Module.js:441:10)
    [在0.2秒内完成,退出代码为1]
    
    进入菜单栏中的“首选项/软件包设置/ESLint/设置-用户”,然后输入以下内容(文件路径可能会有所不同):


    这是GitHub页面:。向下滚动到“配置ESLint”部分,所有内容都记录在那里。

    如果Jeremy的回答仍然没有帮助,请确保您的npm文件夹在您的环境变量中公开

    在Windows 7上,
    PATH
    将包括以下内容:

    C:\Users\<YOUR_USERNAME>\AppData\Roaming\npm;
    
    C:\Users\\AppData\Roaming\npm;
    

    (位置:控制面板\All Control Panel Items\System\Advanced System settings\Advanced\Environment Variables\User Variables…\PATH)

    通过编辑文件“Preferences->Package settings->ESlint->settings-Default”,我让ESlint为我处理升华文本3和Win 7,为“配置文件”插入额外的第三个值,如下面的屏幕截图所示:

    如果不想看到屏幕截图,则文件代码如下所示:

    { "node_path": "C:/Program Files/nodejs",
    "node_modules_path": "C:/Users/<UserName>/AppData/Roaming/npm/node_modules",
    "config_file": "C:/Users/<UserName>/AppData/Roaming/npm/node_modules/eslint/node_modules/debug/.eslintrc"}
    
    {“节点路径”:“C:/Program Files/NodeJ”,
    “节点模块路径”:“C:/Users//AppData/Roaming/npm/node\u modules”,
    “配置文件”:“C:/Users//AppData/Roaming/npm/node_modules/eslint/node_modules/debug/.eslintrc”}
    

    您可以在此处进一步查看配置支持哪些文件格式:

    如果npm找不到
    eslint
    模块,则会抛出此错误


    我也有同样的错误,我意识到这是因为不正确的节点路径,它是
    “$HOME/.npm global”
    ,我只是把它改成
    “$HOME/.npm global/bin”
    (++
    “/bin”
    ),它对我有效。

    我在安装时遇到了这个问题:npm install-g eslint 用下一种方法解决了这个问题:

  • 从终端获取已知的Eslint版本

    eslint -v
    
  • 在package.json中添加了一行已知eslint版本的依赖项

    "dependencies": {
    ...
    "eslint": "^4.19.1"
    }
    
  • 最后一步:在终端中,我更新了这个package.json中写的所有内容

    npm install
    

  • 不确定这一问题是否同时得到了解决,但几年前,每个项目都在全球或本地安装eslint。就我对讨论的理解而言,建议在本地安装eslint和eslint插件以避免问题

    为了将Eslint与Sublime一起使用,我在我的项目中安装了Eslint,包括:

    npm install eslint --save-dev
    
    此外,我安装并集成了Eslint到Sublime中,并让它在保存文件时运行

    npm install eslint --save-dev