我的环境需要 bash 环境变量设置NODE_PATH=$(npm root -g)
,以便tsc可以找到全局 node_modules 文件夹。所以我将它设置在 ~/.profile 和 ~/.bashrc 中。没问题。(这个问题可能是使用 nvm 管理节点版本的副作用,但我对 nvm 很满意)。
但是,在vscode中,tsserver进程显然无法访问 NODE_PATH 设置,因此在声明全局导入时它会报告错误,例如,
import npm from 'npm'
// Cannot find module 'npm' or its corresponding type declarations.ts(2307)
通过忽略错误
/* @ts-ignore */
import npm from 'npm' // no error
编译将成功,因为tsc知道 NODE_PATH。
我看不到任何用于为 tsserver 设置环境变量的 vscode/typescript 设置,更不用说需要执行程序的设置了。
要么缺少这样的功能,要么没有很好的文档记录(或者我没有找到它)。
问题:有官方的方法或解决方法吗?