【问题标题】:Coffeescript Common files moduleCoffeescript 公共文件模块
【发布时间】:2026-01-29 01:15:02
【问题描述】:

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

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

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

require( 'lib/common' )

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

logger.info 等在 lib 文件中。

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

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')
}

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

【问题讨论】:

    标签: module coffeescript


    【解决方案1】:

    您可以在 require 调用中使用解构赋值。

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

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

    【讨论】: