VSCode使用Remote WSL时无Node.js智能提示,process变量不识别
问题根因
该问题是WSL远端的VSCode语言服务未加载Node.js类型声明导致的语法识别错误,和WSL本身是否安装Node运行环境无直接关联。
WSL环境下代码报错效果:
本地VSCode环境下代码正常识别效果:
解决方案
按以下步骤操作即可解决:
- 确保当前VSCode处于Remote WSL连接状态,打开扩展面板搜索
@builtin TypeScript and JavaScript Language Features,确认该内置扩展在WSL环境下已启用,若仅在本地安装则点击「在WSL中安装」后重启远端VSCode服务。 - 在WSL终端的项目根目录执行命令安装Node.js类型声明:
如需全局生效可添加npm install @types/node --save-dev-g参数,更推荐项目本地安装避免版本冲突。 - (可选)在项目根目录新建
jsconfig.json文件写入以下配置,明确语言服务的运行环境:{ "compilerOptions": { "target": "ESNext", "module": "CommonJS", "checkJs": true }, "exclude": ["node_modules"] } - 按
Ctrl+Shift+P调出命令面板,执行「TypeScript: Restart TS Server」重启语言服务,process变量即可被正常识别。
内容的提问来源于stack exchange,提问作者chocojunkie
相关产品推荐
相关产品推荐



