【发布时间】:2013-07-09 23:00:11
【问题描述】:
我很困惑,我需要为meteor.js fw使用fs包。
从流星版本 0.6> 我需要像这样使用 Npm.require:
var fs = Npm.require('fs');
但是当我这样做时会出现错误:npm is not defined
如何解决?我试过 mrt add npm 但是嗯...
顺便说一句:我有 /root/packages/npm
编辑 我的代码位于客户端/服务器端文件夹中,因此我将其移动到服务器块中
var fs;
if(Meteor.isServer) {
fs = Meteor.require('fs');
}
fs.writeFile(path + name,...
GETTING ERROR: Cannot call a method writeFile of undefined
已解决 好吧,我通过将整个内容包装到 Meteor.isServer {... 解决了这个错误,但如果有人能好奇地向我解释为什么它不像上面那样工作?
【问题讨论】:
-
你能运行 mrt --version 并检查你的流星版本吗?
-
对您的附加问题:您尝试使用 Npm 服务器还是客户端? (你可以只在服务器端使用它)
-
在发布问题之前,我已经运行了 mrt --version。我猜是0.6.4。在收藏夹中,我不确定它是哪一边?
-
Meteor.isServer 块之外的代码也在客户端上执行,并且由于没有在那里定义“fs”,它会引发错误。
标签: javascript node.js meteor npm fs