我可以在文件中定义公共依赖项,并将其导入commonJS吗?

时间:2015-08-15 13:58:17

标签: node.js commonjs

我有几个需要相同依赖项的构建任务。让两个依赖列表保持最新是一件非常繁琐的工作,所以我想知道:有没有办法定义共享的依赖关系,然后为两个构建任务导入它们?

我说两个文件都需要glob模块。我可以这样做:

// shared.js
var glob = require('glob');

module.exports = something

然后在两个文件中导入shared.js以获取这些依赖项?

1 个答案:

答案 0 :(得分:1)

我将我的答案分为两部分:技术和个人意见。

技术

你可以很容易地做到这一点。

shared.js

module.exports = {
  a: require('a'),
  b: require('b')
  // and as long as required...
}

build.js

var shared = require('shared')
// and if you'd like...
var a = shared.a
var b = shared.b

个人意见

我不认为这是一个好主意,因为require ()语法不是那么冗长,绝对不复杂。缺点是您可能会发现您的共享模块的使用方式比每个模块真正需要的导入更多。此外,它对可读性也有负面影响,因为看到shared.a的可读性明显低于var a = require('specific-path/a')