使用 exports

Node.js 有一个内置的模块系统。

Node.js 文件可以导入其他 Node.js 文件公开的功能。

module.exports

 1
 2
 3
 4
 5
 6
 7
 8
 9
10

// car.js
const car = {
  brand: 'Ford',
  model: 'Fiesta'
}
module.exports = car

// index.js
const car = require('./car')

exports

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18

const car = {
  brand: 'Ford',
  model: 'Fiesta'
}
exports.car = car
// or
exports.car = {
  brand: 'Ford',
  model: 'Fiesta'
}

const items = require('./items')
const car = items.car

const car = require('./items').car

const { car } = require('./items')

module.exports 和 exports 的区别

第一个公开它指向的对象。后者暴露了它指向的对象的属性。