javascript - 什么会导出 JavaScript/Node.JS 文件?
问题描述
我正在关注一个 NodeJS 教程,我看到了以下代码,我无法理解这个模块会导出什么以及cors
当他/她这样做时有人会得到什么var cors = require('./cors')
?
const express = require('express');
const cors = require('cors');
const app = express();
const whitelist = ['http://localhost:3000', 'https://localhost:3443'];
var corsOptionsDelegate = (req, callback) => {
var corsOptions;
console.log(req.header('Origin'));
if(whitelist.indexOf(req.header('Origin')) !== -1) {
corsOptions = { origin: true };
}
else {
corsOptions = { origin: false };
}
callback(null, corsOptions);
};
exports.cors = cors();
exports.corsWithOptions = cors(corsOptionsDelegate);
解决方案
Node.js 文件导出exports
对象。在此示例中,此对象将包含两个字段:cors
和corsWithOptions
,其各自的值与分配中的值相同。
我假设您的问题是指此文件另存为cors.js
. 因此,通过导入此文件的文件var cors = require('./cors')
实际上会将同一exports
对象分配给cors
变量。
为了说明,如果这将是导入文件中的代码:
var cors = require('./cors');
console.log(cors)
然后这将是它的输出:
{ cors: [Function: corsMiddleware],
corsWithOptions: [Function: corsMiddleware] }
推荐阅读
- java - 使用数组在 MySQL 中插入值
- javascript - 如何在 R 中的同一个箱形图上绘制来自一个数据集的 2 组分类数据
- python - 减少张量收缩的缩放
- javascript - 使用减少组排序使用 javascript 获取和显示 json 数据
- scala - 如果另一列为假,则更改为空数组
- arrays - 查找项目任务列表分配给项目的是/否(数组 vlookup?)
- python - 括号位置更改使用 OpenSimplex 生成噪声的结果
- c# - Oracle客户端在打开连接时抛出错误
- docusignapi - 将生成的 pdf 发送到 docusign 并允许多个签名
- java - How to check Boolean for null?