来自smartpackage的流星项目路径

Rob*_*rto 6 node.js meteor

我正在寻找一种从智能包中查找流星项目路径的方法(例如:获取.meteor文件夹所在目录的路径......).我无法使用节点的__dirname和__filename来执行此操作,因为不知何故在流星中它们是不可用的.有小费吗 ?

emg*_*gee 6

从流星0.6.0开始,这将是:

var path = Npm.require('path');
var basepath = path.resolve('.');
Run Code Online (Sandbox Code Playgroud)


noo*_*taf 5

从智能包装(0.6.5 +):

var path = Npm.require('path');
var base = path.resolve('.');
Run Code Online (Sandbox Code Playgroud)

base 在这种情况下,让你获得你的包裹的位置..

/User/username/projects/project/.meteor/local/programm/server/...

..甚至可能更深

但我们想要

/User/username/projects/project/

..分裂在.meteor

base = base.split('.meteor')[0];
Run Code Online (Sandbox Code Playgroud)

或者作为双线

var path = Npm.require('path');
var base = path.resolve('.').split('.meteor')[0];;
Run Code Online (Sandbox Code Playgroud)


Har*_*rry 0

您实际上可以访问节点:

var __dirname = __meteor_bootstrap__.__dirname;
Run Code Online (Sandbox Code Playgroud)

  • 我在 Meteor 0.5.0 中得到“未定义” (2认同)