node.js - 如果没有为 module.exports 分配任何内容,Node.js 'require()' 会返回什么
问题描述
我正在尝试在 Node.js 中 require() 一个文件,其中包含有效的 JavaScript 代码,但没有分配给“exports”或“module.exports”。在我看来,require() 的结果在这种情况下有时是未定义的,但有时它是一个空的 Object({})。
如果需要的文件中没有导出分配,require() 应该返回什么?谢谢
解决方案
如果没有为 module.exports 分配任何内容,Node.js 'require()' 会返回什么
module.exports
默认情况下是一个空对象(没有自定义属性的对象)。require()
因此,如果模块本身没有为对象分配任何属性,这就是 a将返回的内容。
唯一require()
可以返回undefined
的方法是加载模块时出现问题(尽管通常会引发异常)或模块本身分配undefined
给module.exports
. 为了进一步帮助您解决您所说的退货情况,undefined
您将与我们分享一个可重现的案例。
推荐阅读
- sql - 迁移 Postgresql 时禁用对外键的所有检查
- pandas - Pandas groupby each value from a column
- node.js - Nodejs远程调试和反向代理
- css - 使用反应组件(地图)作为背景图片?
- spring - 每次应用程序重新运行时,CouchBase 都会尝试创建索引
- google-chrome - Webdriver.io:acceptInsecureCerts 和 acceptSslCerts 功能选项似乎没有效果
- bash - 对于制表符分隔文件,用 0 填充空列单元格
- ssl - 错误:开始运行队列服务器时,在证书输入中找不到任何 PEM 数据
- python - 在python中向下拖动公式
- mysql - MySQL添加列需要很长时间