根据我对服务器的理解,Meteor应用程序在node.js光纤的单个线程中运行。在客户端中,代码在全局窗口中运行。
在服务器端和客户端上定义Meteor应用程序中的对象和方法最安全和最佳的做法是什么?
在哪种情况下传递给方法的变量是安全的,而不是被另一个方法调用覆盖?
静态?
var myObj = {};
myObj.someFunc = function(){...};
作为标准对象定义 var myObj = function(){ this.x = function(){...}; };
var myObj = new MyObject();
作为原型的方法?
function MyObject(){ ... }
MyObject.prototype.someFunc = function(){}
var myObj = new MyObject();
虽然我相信我理解静态物体,物体和原型,并且已经在这些方面对控制台和Meteor进行了一些实验,但我仍然是一个菜鸟和非常绿色的我不确定并希望得到更多经验和经验丰富的开发人员的建议。
由于 小号
答案 0 :(得分:0)
不确定您在这里问的是什么,但示例项目是寻找适合流星开发的代码风格的最佳位置:http://www.meteor.com/examples/
您将看到将客户端js分组到“客户端”文件夹中,将服务器端js分组到“服务器”文件夹中是框架的运行方式。
客户端方法通常使用
定义var game = function () {};
服务器端方法在Meteor.methods调用中声明(参见http://docs.meteor.com/#meteor_methods):
Meteor.methods({
start_new_game: function (evt) {};
});
希望有所帮助。