Node.js 常用命令

2018-10-09  本文已影响47人  独木舟的木

Node.js 安装

参考官方文档

# 安装 node.js v10.12.0
$ wget -qO- https://deb.nodesource.com/setup_10.x | sudo -E bash -
$ sudo apt-get install -y nodejs

# 要从 npm 编译和安装原生插件,您可能还需要安装构建工具
$ sudo apt-get install -y build-essential 

# 检查当前 node.js 版本
$ node -v      
v10.12.0

# 检查当前 npm 版本
$ npm -v
6.4.1

$ sudo apt-get upgrade nodejs    ## 更新 node.js
$ sudo apt-get remove nodejs     ## 卸载 node.js

# 更新 npm
$ npm i -g npm

Node.js 版本升级

npm 上有一个开源包叫 n,是专门用来管理 node.js 的版本的。

  1. 安装 n 模块(-g 表示全局环境下安装)。

    npm install -g n
    
  2. 升级 node 到最新稳定版本。

    $ n stable
    # 你也可以指定 node 版本
    $ n v10.11.0
    $ n 10.11.0
    
  3. 检查当前 node 版本

    $ node -v # 查看 node 版本
    v10.10.0
    $ npm -v # 显示版本,检查 npm 是否正确安装
    6.4.1
    $ npm version # 显示完整信息
     { npm: '6.4.1',
     ares: '1.14.0',
     cldr: '33.1',
     http_parser: '2.8.0',
     icu: '62.1',
     modules: '64',
     napi: '3',
     nghttp2: '1.33.0',
     node: '10.10.0',
     openssl: '1.1.0i',
     tz: '2018e',
     unicode: '11.0',
     uv: '1.23.0',
     v8: '6.8.275.30-node.24',
     zlib: '1.2.11' }
    

NPM 的常用命令

npm 是 Node.js 默认的包管理器。

  npm install <Module Name>
  npm i <Module Name> # 简写
  
  # 同时将安装包信息记录到 package.json 的 dependencies 字段(自动更新package.json 文件)
  npm i --save <Module Name> 
  npm i -S <Module Name>
  
  # 开发阶段,记录到 package.json 的 devDependencies 字段
  npm i --save -dev <Module Name> 
  
  # 示例:
  npm install express    # 安装 express 模块
  npm i uuid             # 安装 uuid 模块
  npm i moment           # 安装 moment 模块(时间处理模块)
  npm i node-forge       # 安装 node-forge 模块(TLS)
  npm i mocha            # 安装 mocha 模块(测试框架)
  npm i body-parser --save # 安装消息体解析模块
  npm i sqlite3 --save     # 安装 sqlite3 进程内数据库
  npm i node-readability --save # 安装 HTML 页面转化模块
  npm i ejs --save        # 安装渲染模版引擎
  npm i http-errors --save  # Create HTTP errors for Express, Koa, Connect, etc. with ease.

初始化生成包描述文件(package.json 文件)

$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

package name: (node)
version: (1.0.0)
description:
entry point: (testCrypto.js)
test command:
git repository:
keywords: arlingbc
author:
license: (ISC)

你也可以使用默认值创建 package.json 文件:npm init -y

注册包仓库账号

$ npm adduser

上传包文件

$ npm publish <floder> # 上传包文件到官方仓库

$ npm publish .

管理包权限

通常,一个包只有一个人拥有权限进行发布。

$ npm owner ls <package name>
$ npm owner add <user> <package name>
$ npm owner rm <user> <package name>

node 命令行权限问题

运行 npm 命名时,提示“permission denied...”,解决方法是设置允许不安全权限:

npm config set unsafe-perm=true

# 如果以上方法无效,不妨在命令前加 sudo 提升权限
sudo npm install -g eslint

npm 脚本

npm 脚本可以说是一个微型脚本调用工具,你可以用它构建客户端包、执行测试、生成文档等。
启动服务器的命令(node index.js)可以保存为 npm 脚本,打开 package.json 文件,在 scripts 里添加一个 start 属性:

  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node index.js"
  },

启动程序:npm start
指定端口:PORT=3001 npm start

上一篇下一篇

猜你喜欢

热点阅读