没看懂这一波到底想要干什么???

来源:4-7 环境变量检查功能开发

入门级全栈专家

2022-02-12 21:45:28

function checkEnv() {

 const dotenv = require("dotenv");

 const dotenvPath = path.resolve(userHome, ".env");

 if (pathExists(dotenvPath)) {

   dotenv.config({

     path: dotenvPath,

   });

 }

 console.log(pathExists(dotenvPath));

 createDefaultConfig();

}


function createDefaultConfig() {

 const cliConfig = {

   home: userHome,

 };

 if (process.env.CLI_HOME) {

   cliConfig["cliHome"] = path.join(userHome, process.env.CLI_HOME);

 } else {

   cliConfig["cliHome"] = path.join(userHome, DEFAULT_CLI_HOME);

 }

 process.env.CLI_HOME_PATH = cliConfig.cliHome;

}



写回答

2回答

慕粉3946981

2022-05-11

require("dotenv") 这个库有两个主要功能

读 .env 配置文件内容并解析成key=value的对象结构

将解析的对象自动注入到 process.env 环境变量中


这上面的代码就是想把用户主目录中的 .env 配置文件中所有内容读取到,并将读取到的内容解析成一个对象注入到 process.env 环境变量中。


 createDefaultConfig() 这个函数的作用是判断刚才读取并注入到 process.env 环境变量中有没有 process.env.CLI_HOME 这个值

  • 如果有,将用户主目录 + process.env.CLI_HOME 拼接成一个路径放到 process.env.CLI_HOME_PATH中

  • 如果没有,将用户主目录 + DEFAULT_CLI_HOME(这个变量是在const.js文件中定义的一个常量) 拼接成一个路径放到 process.envCLI_HOME_PATH中


1

扬_灵

2022-02-13

同学你好,这里是做的一个读取环境变量存储的演示,可以把你的有疑问的点详细说一下吗。

0

2024版 Web前端架构师

2024版 ,前端高手课!全局架构思维/系统培养大厂P7技术专家/中小厂前端Leader

1126 学习 · 2255 问题

查看课程