使用导出从 Node.js 文件中公开功能
Module.exports API 将数据暴露给其他文件
Node 支持内置模块系统。 Node.js 可以导入其他 Node.js 文件公开的功能。要导入某些内容,您需要使用当前文件夹中的library.js文件公开的导入功能。
const library = require('./library') // Path
必须先公开文件中的功能,然后才能将其导入任何其他文件。默认情况下,文件中定义的对象是私有的,不暴露给外部世界。
module.exports文件 API 由模块系统提供以在代码中实现。
module是一个表示当前模块的变量, exports是一个将作为模块公开的对象。因此,module.exports 和exports 都将作为一个模块公开。
module.exports基本上是一个返回require调用结果的对象。
您需要新的exports属性来将对象或函数导入应用程序的任何其他部分。您可以通过 2 种方式做到这一点:
第一种方法是将对象分配给module.exports ,其中该对象由模块系统开箱即用地提供。
例子:
const person = {
firstName: 'John',
lastName: 'Smith'
}
module.exports = Person
// in the file where you want to export
const person= require(‘./person)
第二种方法是将导出的对象添加为导出的属性。您可以使用导出来导出多个对象、函数或数据:
const Person = {
firstName: 'John',
lastName: 'Smith'
}
exports.person = person
或直接
exports.person = {
firstName: 'John',
lastName: 'Smith'
}
您将通过在另一个文件中引用导入的属性来使用它:
Const items = require('items')
items.person
或者
const person= require('./items').person
module.exports 和exports 有什么区别?
第一个公开它指向的对象,而后者公开它指向的对象的属性。