我正在构建一个简单的Meteor-Angular 1应用程序,我很难让我的变量' var conn'在服务器中的方法之间保持不变。
流星代码:
import {Meteor} from 'meteor/meteor';
var name;
Meteor.methods({
'setName': function () {
name = 'Harry';
},
'getName': function () {
console.log(name);
});
}
});
如果我从Angular中的同一模板调用setName和getName,则名称仍然存在。如果我在一个模板中设置名称但在另一个模板中调用getName,那么名称是“未定义的”#39;。我带来了Java背景,并且不知道如何使meteor类作为Angular模板之间的相同对象保持不变。非常感谢您的帮助。
答案 0 :(得分:0)
我很惊讶它的功能完全正常。如果该代码确实在服务器上运行,则在每次调用时在新的上下文中调用它。如果您希望数据保持不变,则需要在数据库中保留。
答案 1 :(得分:0)
您有3个选项:
/server/xxx.js
文件中定义的全局变量。对于alt 2,您可以使用connection.id
[Docs]中的Meteor.onConnection()
创建字典对象并将数据范围定位到客户端连接。