[英]How does this expression work? "require('dotenv').config();"
我看到了这个表达:
require('dotenv').config();
在 NodeJS 项目中server.js
文件的开头。 我只是想知道它是如何工作的,它有什么作用?
因为我几乎总是在require
表达式行之前看到一个变量,例如
const express = require('express');
然后它会以某种方式被使用
const app = express();
但是require('dotenv').config();
看起来不同,它并没有像常用的方法那样被使用。
当您在 package.json 文件中定义
type
时,它将为整个项目设置该导入类型。require()
不能用于module
类型,import
不能用于commonJS
类型
示例 package.json
{
"name": "stack",
"version": "1.0.0",
"description": "",
"main": "main.js",
"type": /* either commonJS or module */
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
在设置导入类型后,这里是两种类型的示例
// if "type": "commonJS"
const package = require('package')
// if "type": "module"
import package from 'package'
这是读取.env
文件的环境变量模块。 以下是导入它的两种方法,无论您使用的是commonJS
类型还是module
require('dotenv').config() // commonJS
import {} from 'dotenv/config' // module
像这样工作...
.env文件
TOKEN=THIS_IS_MY_TOKEN
然后在.js
文件中
/* after importing 'dotenv' one of the two ways listed above */
console.log(process.env.TOKEN) // outputs "THIS_IS_MY_TOKEN"
这是使用commonJS
或module
导入 express 的两种方法
const express = require('express') // commonJS
import express from 'express' // module
const app = express() // initializes express app
ES 模块是 JavaScript 的标准,而 CommonJS 是 Node.js 中的默认模块。 js。 创建 ES 模块格式是为了标准化 JavaScript 模块系统。 它已成为封装 JavaScript 代码以供重用的标准格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.