内容简介:代码日志版权声明:翻译自:http://stackoverflow.com/questions/7262869/best-way-to-require-several-modules-in-nodejs
我不太喜欢要求模块的标准方式,它是这样的:
connect = require 'connect' express = require 'express' redis = require 'redis' sys = require 'sys' coffee = require 'coffee-script' fs = require 'fs'
这不完全是干的在一个适中的CoffeeScript服务器中,需求舞蹈占据了整个脚本的一大部分!我已经 toying 以下备选方案:
"connect,express,redis,sys,coffee-script,fs"
.split(',').forEach (lib) -> global[lib] = require lib
既然我没有看到人们试图重构标准方法,我想我会问,这样做是否合理,如果是,有什么更好的办法吗?
请注意,咖啡脚本不是有效的标识符,因此您的代码不会真正正确导入.您可以使用CoffeeScript的灵活对象字面来很好地处理.我也会使用?=来避免不必要的重新导入模块. user211399’s answer
建成:
global[id] ?= require name for id, name of {
"connect", "express", "redis", "sys", coffee: "coffee-script", "fs" }
<sup>[07001]</sup>
由于我允许您在不同模块中导入不同的标识符,所以使用全局命名空间感觉特别不安全.我会在本地导入它们,如下所示.请注意,因为这使用eval它可能不会正常失败,如果您指定一个非法的标识符.
eval "#{id} = require(#{JSON.stringify name})" name for id, name of {
"connect", "express", "redis", "sys", coffee: "coffee-script", "fs" }
<sup>[07002]</sup>
代码日志版权声明:
翻译自:http://stackoverflow.com/questions/7262869/best-way-to-require-several-modules-in-nodejs
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Open Data Structures
Pat Morin / AU Press / 2013-6 / USD 29.66
Offered as an introduction to the field of data structures and algorithms, Open Data Structures covers the implementation and analysis of data structures for sequences (lists), queues, priority queues......一起来看看 《Open Data Structures》 这本书的介绍吧!