常见的global变量
- setTimeout
- setInterval
- queueMicroTask
- setImmediate
global.process
- 作用:可以获取执行命令时的一些参数
- 常见的process:
- env
- argv
- argv[0],表示node可执行文件在系统中的位置
- argv[1],此时正在执行哪个文件
- …other,用户设置的命令行参数
- chdir
- cwd
- 获取当期的工作目录,可以变化的
- 与__dirname的区别是,__dirname获取到的文件的绝对路径,不可用修改
- nextTick
- version
- exit
- platform
- 获取当前的系统执行环境
- Windows是win32
- mac是darwin
环境变量的设置
- Windows上使用
set NODE_ENV=development
,PS:不一定有效果 - Mac上使用
export NODE_ENV=development
- 兼容写法:cross-env插件,点击进入,使用:
cross-env a=b
命令行管家commander
- 地址
- 经常使用该插件获取process.argv获取到的参数
let program = require('commander')
program.option('-p,--port <v>', 'set port')
program.option('-c,--config <v>', 'set webpack.config.js')
// 执行命令时触发
program.command('create').description('create project').action(() => {
console.log('create')
});
// 监听--help事件
program.on('--help', () => {
console.log('监控help')
})
program.parse(process.argv)
console.log(program)
五个特殊变量
- __dirname、__filename、module、exports、require
- 它们不是全局变量,但是却在各个模块中都可以访问到