【发布时间】:2013-12-21 15:58:19
【问题描述】:
我认为在 Meteor 中定义存储系统信息的服务器端类会很聪明。此信息应由选定的用户访问。它不存储在 MongoDB 中,因此据我了解,我认为订阅和发布不是一种选择。
这是我的简化方法:
if(Meteor.isServer) {
serverVar = true; // could depend on server logic
}
Meteor.methods({
myMethod: function() {
if(serverVar) {
return "secret";
} else {
throw Error();
}
}
}
然后,在客户端:
Meteor.call("myMethod", function(err, res) {
console.log(res);
}
不幸的是,我得到了一个 ReferenceError ,其中 serverVar 没有定义。在我看来,在定义serverVar 时使用Meteor.isServer 作为条件打破了这个概念。但是如何使用Meteor.methods 访问服务器端变量?什么样的方法可以解决我的问题?非常感谢!
更新:感谢您的建议。 serverVar 可以是服务器上定义的任何内容,而不是 Meteor.isServer。因此,我认为仅将客户端上的 serverVar 定义为 false 并不能解决我的问题。
【问题讨论】:
标签: javascript meteor