来自smartpackage的流星项目路径

时间:2012-10-22 19:25:16

标签: node.js meteor

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

5 个答案:

答案 0 :(得分:6)

从流星0.6.0开始,这将是:

var path = Npm.require('path');
var basepath = path.resolve('.');

答案 1 :(得分:5)

从智能包装(0.6.5 +):

var path = Npm.require('path');
var base = path.resolve('.');
在这种情况下,

base可以让您获得包裹的位置..

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

..甚至可能更深入

但我们想要

/User/username/projects/project/

..在.meteor分裂

base = base.split('.meteor')[0];


或作为双线

var path = Npm.require('path');
var base = path.resolve('.').split('.meteor')[0];;

答案 2 :(得分:1)

这在Meteor 0.5.0中适用于我:

var require = __meteor_bootstrap__.require;
var path = require('path');
var basepath = (path.resolve('.'));

答案 3 :(得分:0)

您实际上可以访问节点:

var __dirname = __meteor_bootstrap__.__dirname;

答案 4 :(得分:0)

您可以尝试(仅限服务器端)

process.env.PWD为我返回类似的东西(OSX):

'/Users/myusername/Desktop/myproject'

使用该命令可以获得流星项目的根目录。