2020你应该知道的Node配置

1,002 阅读3分钟

公众号:前端微服务
GitHub:github.com/yongbolu
作 者:子奕

一、概述

随着前端工程化和自动化的高效推行,NodeJS的发展起到了很大的推动作用,但对于经常使用脚手架的小伙伴们来说,对NodeJS除了安装之外,其它的都不是非常熟悉,导致出了问题无法排查,尤其在2020年换工作和找工作也异常的艰难,为了在逆境中脱颖而出,小编特意为大家总结了NodeJS开发项目常用的一些工具,希望对大家工作有所帮助,如果大家觉得好,不妨点个赞,关注 『前端微服务』 微信公众号,让小编持续为大家带来更多干货。

二、NodeJS项目常用插件配置

2.1 跨平台设置

在大多数Windows命令行中在使用NODE_ENV = production设置环境变量时会报错。同样,Windows和Linux命令如何设置环境变量也有所不同。cross-env是跨平台设置和使用环境变量的脚本。使用 cross-env 可以设置在不同的平台上有相同的NODE_ENV参数。

2.1.1 安装

$ npm install cross-env -D(--save-dev)
# OR 
$ yarn add cross-env -D(--save-dev)

2.1.2 使用

2.1.3 package.json配置

{
  "scripts": {
    "server:dev": "cross-env NODE_ENV=development DEBUG=* nodemon --config nodemon.json",
    "server:build": "cross-env NODE_ENV=production --config nodemon.json",
  }
}

2.1.4 适用场景

适用于本地线上环境有差异的场景,例如本地线上使用不用的开发域名则可以通过 NODE_ENV 来判断(process为node的全局变量)。

if(process.env.NODE_ENV!='development'){
  //线上环境
}

2.1.5 解决问题

简化因系统不同而造成的不同设置,跨平台处理方法。

2.2 代码热更新

在Node项目的软件开发中,经常需要边写边调试,当我们文件发生改变时,我们需要终止命令,,然后重启命令,因此Node服务需要频繁手动重启,特别浪费时间。于是我们使用nodemon软件会自动监测文件的变化,当有变化时重新启动服务。使用ts-node(tsc && node dist/app.js)启动项目。nodemon是一种工具,可以自动检测到目录中的文件更改时通过重新启动应用程序来调试基于node.js的应用程序。

2.2.1 安装

  1. 全局安装
$ npm install -g nodemon
# OR 
$ yarn global add nodemon 
  1. 局部安装
$ npm install nodemon -D(--save-dev)
# OR 
$ yarn add nodemon -D(--save-dev)

2.2.2 使用

  • 启动node服务
$ nodemon dist/app.js // 启动node服务
  • 在本地3000端口启动node服务
nodemon ./main.js localhost 3000 // 在本地3000端口启动node服务

2.2.3 package.json配置

{
  "scripts": {
    "start": "tsc && node dist/app.js",
    "server:dev": "nodemon dist/app.js",
    "start": "ts-node -r tsconfig-paths/register nodemon src/app.ts",
    "watch": "nodemon --watch 'src/**/*' -e ts,tsx --exec 'ts-node' ./src/app.ts"
  }
}

运行nodemon start server:dev

2.2.4 配置 nodemon

为了监测指定的文件,需要配置 nodemon.json

  1. 创建 nodemon.json 文件;
  2. 配置内容
{
    "watch":["./src/**/*.*"]
}
  1. 配置 nodemon debug模式
```json
{
  "scripts": {
    "server:dev": "DEBUG=* nodemon dist/app.js",
  }
}
  1. 配置完成后需要重启;

2.2.5 适用场景

在node项目的软件开发中,经常需要边写边调试。

2.2.6 解决问题

因此node服务需要频繁手动重启,特别浪费时间。nodemon软件会自动监测文件的变化,当有变化时重新启动服务。

三、关注我们

点击下方关注我👇👇👇