2012-05-24 10 views
0

根據我對服務器的理解,Meteor應用程序以node.js光纖中的單個線程運行。在客戶端中,代碼在全局窗口中運行。定義Meteor應用程序中使用的對象和方法的最安全方法

然後,在服務器端和客戶端的Meteor應用程序中定義對象和方法的最安全和最佳實踐是什麼?

在哪些情況下,傳遞給該方法的變量是安全的,並且不會被該方法的另一個調用覆蓋?

  1. Static?

    var myObj = {};

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

  2. 作爲一個標準的對象定義 var myObj = function(){0} {0} function(){...}; };

    var myObj = new MyObject();

  3. 作爲原型的一種方法?

    函數爲MyObject(){... }

    MyObject.prototype.someFunc =函數(){}

    變種MyObj中=新的MyObject();

雖然我認爲我的理解靜態對象,對象和原型,並在這些方面做了一些實驗用的控制檯和流星我還是一個小白而且非常環保,我是不確定的,想的更多的經驗建議經驗豐富的開發人員。

感謝 小號

回答

0

不知道你是問什麼在這裏,但該示例項目尋找的代碼適合流星開發風格的最佳地點:http://www.meteor.com/examples/

你會看到,分組客戶端js到'客戶'文件夾和服務器端js到'服務器'文件夾是框架如何運作。

Meteor.methods({ 
    start_new_game: function (evt) {}; 
}); 

希望幫助:

客戶端的方法通常與Meteor.methods調用內部聲明

var game = function() {}; 

服務器端方法(見http://docs.meteor.com/#meteor_methods)定義。

+0

我想我所問的是可以安全地使用var myObj = {};與var myObj = function(){};我仍然對原型和它們的用法感到困惑。我仍然非常青睞JavaScript,並仍在通過O'Reilly的好書。所以,這個評論的第一句話是最重要的。 –

相關問題