1
我正在編寫一個NodeJS應用程序,我想將我的類分成單獨的文件,但是它們內部有很多類的名稱空間(模塊),使用一個類的一個文件。如何創建跨越多個文件的CommonJS模塊?
據我所知,由其他文件中的NodeJS使用到require
對象的CommonJS將每個文件視爲不同的模塊。
有鑑於此,我該如何創建跨越多個文件的CommonJS模塊?
我正在編寫一個NodeJS應用程序,我想將我的類分成單獨的文件,但是它們內部有很多類的名稱空間(模塊),使用一個類的一個文件。如何創建跨越多個文件的CommonJS模塊?
據我所知,由其他文件中的NodeJS使用到require
對象的CommonJS將每個文件視爲不同的模塊。
有鑑於此,我該如何創建跨越多個文件的CommonJS模塊?
你namemespace /分組模塊可以看看這個(急切需要):
customer.js:
module.exports.wholesale = require('./customers/wholesale');
module.exports.retail = require('./customers/retail');
module.exports.special = require('./customers/special');
現在,當你需要的客戶端模塊,你可以寫:
var Customer = require('customer.js');
並且您可以訪問所有客戶類型:
var wholesale = Customer.wholesale;
var retail = Customer.retail;
var special = Customer.special;
在此解決方案中,當您導入Customer時,它也會加載所有子模塊。有時子模塊可能非常大,只需要一個子模塊。如果是的話你可以寫分組客戶模塊是這樣的(懶要求):
module.exports.wholesale = function(){
return require('./customers/wholesale');
}
module.exports.retail = function(){
return require('./customers/retail');
}
module.exports.special = function(){
return require('./customers/special');
}
,你可以訪問所有客戶類型:
var wholesale = Customer.wholesale();
var retail = Customer.retail();
var special = Customer.special();
你可以做更多更深的嵌套,通過組合其他分組模塊。