如何全局设置 VSCode 的 nvm 和 ESLint?

How to set nvm and ESLint with VSCode globally?

我想要 vscode eslint 扩展与 nvm 一起工作。

我在 vscode eslint estension 控制台中得到 "Install ESLint global with npm install -g eslint"。

所以,我在 npm install -g eslint 的终端中安装了带有 nvm 的 eslint,并在路径中进行了设置:

/Users/myname/.nvm/versions/node/v10.16.0/lib/node_modules

尝试查看 official docs,并找到一种解决方案以在 settings.json 中设置 eslint.nodePath

settings.json 共 vscode:

  "eslint.nodePath": "/Users/myname/.nvm/versions/node/v10.16.0/lib/node_modules",

设置此 属性 后,扩展效果很好。

但是,当我使用 nvm 更改节点版本时它会崩溃。我需要重新设置 settings.json.

是否有任何解决方案可以在 vscode 中使用 nvm 设置 eslint?

我不想每次用nvm更改节点版本时设置settings.json

我想简单点。

谢谢。

经过几个小时的努力,我弄明白了。

  1. 不要使用鱼作为 mac 的默认值 shell

  2. 将 vscode 用户设置设置为:

  "terminal.integrated.shell.osx": "/usr/local/bin/fish",

您可以在 vscode 终端中使用 fish

安装fisher, 使用

fisher add FabioAntunes/fish-nvm
fisher add edc/bass

您可以将 nvm 与 fish 一起使用

  1. 设置您的 .bash_profile 的 nvm 和 nvm 变量:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

添加

fish

在底部

  1. 如果你想切换 bash 和 fisher 使用:
# fish -> bash
bash --login 

# bash -> fish
fish
  1. 享受fishnvmeslint vscode plugin

这将是 vscode 控制台的输出。

[Info  - 12:04:44 PM] ESLint server stopped.
[Info  - 12:04:45 PM] ESLint server running in node v10.11.0
[Info  - 12:04:45 PM] ESLint server is running.