📅  最后修改于: 2023-12-03 15:13:03.782000             🧑  作者: Mango
.env.development.local
是一个类Unix系统上用来设置环境变量的文件,常常用于存储各种API密钥、密码、服务端口等私有配置信息。它通常被放置在项目根目录下,用于本地开发环境的配置。
.env
文件?通常情况下,开发人员可以在代码中直接使用硬编码的配置信息,例如:const port = 3000
。但是当多人协作开发、多次部署应用程序的时候,硬编码配置信息变得很不方便,而且会有安全问题。因此,.env
文件的作用就在于可以把应用程序的配置信息从代码中独立出来,以便于在不同的开发环境下使用不同的配置信息。
.env
文件?我们可以使用第三方库dotenv
来在Javascript代码中调用.env
文件。以下是一个简单的使用.env
文件的例子:
const dotenv = require('dotenv');
dotenv.config();
console.log(process.env.MY_SECRET_KEY);
在该代码中,我们通过调用dotenv
的config
方法来加载我们定义的.env
文件。然后,我们可以使用process.env
对象来访问在文件中定义的环境变量。
.env
文件语法.env
文件使用简单的"键=值"格式,一行只能定义一个键值对。例如,我们可以在.env
文件中添加以下键值对:
MY_SECRET_KEY=helloworld
DB_HOST=localhost
DB_PORT=3306
DB_USER=myusername
DB_PW=mypassword
.env
文件的顺序在你的项目中有很多不同的.env
文件,它们的加载顺序非常重要。dotenv
库的加载顺序如下:
.env
- 该文件包含默认的设置,对于所有环境都是一样的。.env.local
- 该文件与.env
文件类似,但仅在本地开发环境中使用。.env.development
- 在开发环境中使用。.env.development.local
- 仅在开发环境中使用,且不会在版本控制系统中进行追踪。.env.test
- 在测试环境中使用。.env.test.local
- 仅在测试环境中使用,且不会在版本控制系统中进行追踪。.env.production
- 在生产环境中使用。.env.production.local
- 仅在生产环境中使用,且不会在版本控制系统中进行追踪。.env.local
文件将覆盖.env
文件中的同名键值对,同样,.env.development.local
、.env.test.local
和.env.production.local
也将覆盖它们对应的默认环境文件中的同名键值对。
在本地开发环境中,使用.env
文件管理配置信息是一种非常方便的解决方案。我们只需要在.env.development.local
文件中定义我们的私有配置信息,随后我们的应用程序将自动加载这些信息,并使用它们。此外,.env
文件还允许我们在不同的开发环境中使用不同的配置信息,以确保我们的应用程序始终以最佳状态运行。