0

根据我对服务器的理解,Meteor 应用程序在 node.js 纤维中的单个线程中运行。在客户端,代码在全局窗口中运行。

那么在服务器端和客户端定义 Meteor 应用程序中的对象和方法的最安全和最佳实践是什么?

在哪些情况下传递给方法的变量是安全的并且不会被另一个方法调用覆盖?

  1. 静止的?

    var myObj = {};

    myObj.someFunc = function(){...};

  2. 作为标准对象定义 var myObj = function () { this.x = function () {...}; };

    var myObj = new MyObject();

  3. 作为原型的方法?

    函数 MyObject() { ... }

    MyObject.prototype.someFunc = function() { }

    var myObj = new MyObject();

虽然我相信我了解静态对象、对象和原型,并且在这些方面已经使用控制台和 Meteor 进行了一些实验,但我仍然是一个菜鸟并且非常新手,我不确定并希望获得更多经验和经验丰富的开发人员的建议。

谢谢小号

4

1 回答 1

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) {};
});

希望有帮助。

于 2012-05-29T15:53:28.390 回答