2016-04-26 33 views
0

我有一個node.js模塊,它有foobar。有我的方式來調用foobar喜歡裏面:使用方法define在node.js中導出模塊

module.exports = { 
    foo: function(a, b, c) { 

    }, 

    bar: function(a, b, c) { 
     foo(); //returns 'foo is not defined' 
    } 
} 

原樣,foo返回undefined ...有人可以幫忙嗎?

在此先感謝!

回答

1

是的,有。只需使用this

module.exports = { 
    foo: function(a, b, c) { 

    }, 

    bar: function(a, b, c) { 
     this.foo(); 
    } 
} 

我推薦閱讀this article處理對象。

1

@ victorkohl的答案將起作用。或者,你也可以使用封,以避免調用this

function foo (a, b, c) { 
} 

function bar (a, b, c) { 
    foo(); 
} 

module.exports = { 
    foo: foo, 
    bar: bar 
}; 
1

而只是爲了好玩,這個工程太:

foo(); //returns 'foo is not defined' 

module.exports.foo(); 

(我推薦包含自@ victorkohl的版本。)