我的文件夹结构如下:
XX.ts文件中的代码:
var __dirname: string;
console.log("__dirname: " + __dirname); // the output is undefined.
我尝试过:通过注释掉代码var __dirname: string;
,__dirname
的值为...../app
,指向当前文件夹...../app/tsFolder
。
任何人都可以解释一下吗?
答案 0 :(得分:8)
跑步
localhost:80/balancer-manager
如果这不起作用,请添加
npm install --save-dev @types/node
到"types": ["node"]
的{{1}}字段。
答案 1 :(得分:5)
我假设你引用了nodejs全局变量__dirname。
如果它指向.... / app,则表示您的XX.ts被编译到.... / app文件夹。当运行生成的js文件时 - __dirname指向其(js文件)位置。
当然你不应该声明新的var __dirname。而是使用nodejs typings或者像这样手动声明它:
declare var __dirname;
答案 2 :(得分:0)
我尝试了npm i @ types / node,而tsconfig没有变化。您确保工作目录路径长度必须小于Windows最大限制。