每周npm模块源码解读:cross-env
2018-09-23
字数统计:793 字
阅读时长 ≈ 1 分钟
周2018.9.17 ~ 2018.9.23
前言
模块名:cross-env
github: https://github.com/kentcdodds/cross-env
描述:可以用单个命令去设置node的环境变量,并且不用考虑操作平台的区别
适合人群:至少看过一遍源码
正文
首先通过一个 parseCommand
函数来解析命令行,返回环境参数、命令和命令参数。
再通过函数 getEnvVars
得到node的环境变量,函数执行过程是在平台windows上转化了变量(看了个半懂)。
最后就是通过模块 cross-spwan
来执行最终得到的命令。添加事件监听器来处理一些信号,以便来停止进程。
结语
正则不太好,导致部分正则匹配难以看懂。不过能懂得其模块思想。主要是通过解析转化命令行,再通过 cross-spawn
来执行最终的命令行。