Coffeescript通用文件模块

时间:2012-11-05 09:44:53

标签: module coffeescript

我有一些常见的文件,如记录器,秒表,指标等。现在,我想在1个common.coffee中添加所有文件,并将这些文件放在lib下的公共文件夹中。

lib/common/logger.coffee
lib/common/metrics.coffee
lib/common/stopwatch.coffee
lib/common.coffee

现在,当我必须使用这些文件时。我只是做了一个

require( 'lib/common' )

并且应该能够调用记录器类

如lib文件中的logger.info等。

如何去做?下面是common.coffee,但是每当我必须使用它时,它都要求我说“​​Common.logger”。我不想要Common前缀

nconf = require('nconf')

environment = process.env.NODE_ENV || 'development'

nconf.file 'environment', "config/#{environment}.json"
nconf.file 'default', 'config/default.json'

module.exports = {
  logger: require('lib/common/logger')
  metrics: require('lib/common/metrics') nconf
  stopwatch: require('lib/common/stop_watch')
}

另外,我如何制作公共文件夹的模块,以便我可以使用npm来安装它。

1 个答案:

答案 0 :(得分:2)

您可以在需求电话上使用解构分配。

{logger, metrics, stopwatch} = require("lib/common")

另一种方法是使用像grunt.js这样的构建工具,并在构建最终部署之前调用一个连接任务。