[英]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.