簡體   English   中英

流星JS全局函數

[英]Meteor JS global function

使用Meteor.js我想使用包含其他功能的全局功能:

BIG = function (){

     this.init = function ()
     {
        //do something
     }

     this.addSomething = function (param1, param2)
     {
        //do something else
     }

}

現在即時通訊調用此功能,如:

 BIG.init();
 BIG.addSomething(param1, param2);

但這不起作用,控制台打印“ BIG.init不是函數”。 當我在控制台中鍵入“ BIG”時,它會打印回“ function BIG()”,這意味着Meteor識別出BIG是一個函數,但無法識別BIG內部的子功能。

任何有關如何實現此目標的幫助?

謝謝。

語法應該是這樣(根據您當前的語法):

new BIG().init();
new BIG().addSomething();

您會看到,您需要使用new關鍵字構造一個new BIG實例,以在BIG內正確設置this上下文,然后它將返回它的方法供您執行。

但我懷疑這實際上是您要嘗試做的事情。 您確定不只是要聲明一個對象文字,如下所示:

BIG = {

     init: function ()
     {
        //do something
     }

     addSomething: function (param1, param2)
     {
        //do something else
     }

}
BIG.init();
BIG.addSomething();

為什么不使用此函數返回的對象? 即:

var big = function() {

    return {
        init: function() {
            alert(1);
        },

        addSomething: function(param1, param2) {
            //do something else
        }
    }
}

BIG = big();

BIG.init();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM