nodejs之npm


主要内容

  1. npm工具的使用
  2. 学习express框架使用
  3. 完成留言板案例(express)

    目标

    能够理解npm的作用
    能够使用npm安装(添加)第三方模块
    能够使用npm删除(卸载)第三方模块
    能够理解package.json文件的作用
    能够安装moment(日期)第三方模块
    能够理解模板引擎的作用
    能够使用npm安装express框架
    能够使用express建立http服务器

    1.npm简介

  4. 是什么?
    是一个命令行工具(node package manager)
  5. 能干吗?
    下载node所需要的第三方模块
  6. 安装Node js自带npm所以直接使用

    2.NPM语法

    2.1命令

  7. 查看:npm list
  8. 安装:npm install 模块或@版本号 [安装可选参数]
  9. 卸载:npm uninstall 模块

    2.2安装参数

  10. –save 记录生产环境所需模块(默认)
  11. –save-dev 记录开发环境所需模块
  12. -g 该模块可在命令行运行 (global) npm config list查看全局目录所在位置
    1
    2
    3
    多学一招:
    都安装:npminstall
    只安装生产环境:npm install --production

    3.NPM使用

    3.1初体验

  13. 复习:MIME是一个规则,类型text/html-.html文件、image/png-png文件等
  14. 需求:安装mime模块 (ps.该模块用户判断mime类型)

  1. 明确:npm是nodejs项目模块管理工具
  2. 使用:1-初始化项目,2-安装/卸载模块

  1. 步骤1:初始化项目(ps.自动创建package.json文件,作用:描述项目一依赖)
    1
    npm init -y
  2. 步骤2:安装
    1
    npm install [xxx]
  3. 步骤3:使用
    1
    2
    3
    4
    5
    6
    7
    8
    9
    //1.引入第三方模块
    var mime = require('mime');

    //2.调用方法测试
    var img = 'xxxx.png';
    var imgMimeType = mime.getType(img);
    var imgType = mime.getExtension(imgMimeType);
    console.log(imgMimeType);
    console.log(imgType);

    3.2安装参数作用

  • 发现1:上面默认不加任何参数安装mime,命令行不可以直接使用

  • 解 决:加上-g重新安装

img

  • 发现2:默认install不加参数则属于生成环境模块

img

  • 测试:参数–save-dev代表开发环境

img

  • 发现3:安装模块加–production参数则生产环境,否则全部安装

img

img

img

img

4.npm模块版本控制

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
科普软件版本含义:
aplha版 - 内测版(功能不全,BUG多)
beta版 - 公测版(功能不全,发骚友准备,依旧存在BUG)
rc版 - 预览版(功能不再增加)
stable版 - 用户可用
===================
主版本号.次版本号.修改版本号

主版本:功能模块有大的变动,比如增加多个模块或者整体架构发生变化
次版本:次版本号的升级对应的只是局部的变动
修改版:BUG修复或者功能的扩充等

~用户使用该版本后,最多升级到【修改版】最新
^用户使用该版本后,最多升级到【次版本】最新
*用户使用该版本后,可以升级到最新版本

5.npm源管理

  • 明确:通过npm命令下载会到国外服务器获取
  • 缺点:下载速度慢
  • 解决:切换国内服务器

  • 简介:nrm是资源管理工具,可以切换国内服务器下载

  • 命令

    1
    2
    3
    4
    安装:npm install nrm -g
    查看:nrm ls (注:单词list缩写,查看可用服务器)
    切换:nrm use 服务器名
    测速:nrm test
  • 使用

    1. 步骤1:安装

    img

    1. 步骤2:查看 -> 测速 -> 切换 -> 验证

    img

6.NPM自定义脚本命令(重点.难点)

  • 思考:后期启动项目需要敲很长的命令,如何简化?

  • 解决:通过修改package.json文件的scripts自定义脚本命令


  • 语法:npm run 名称 (ps. 1-名称指scripts中的键 2-如果是start则run可省略)

  • 练习:运行a输出666

img

  • 练习:通过start运行mime_test.js文件

img

7.NPM包自定义包发布(理解)

模块:在node中就是一个文件
包:N个模块、目录、package.json等组成,然后发布,让别人require


需 求:发布itcast-php-teacher包

  • 步骤1:创建day22开发目录 -> 初始化 -> 修改package.json文件

img

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var fn = {

​ name: 'phpopenfather',

​ school: 'php@itcast',

​ say: function() {

​ console.log('悟空');

​ }

}

module.exports = fn
  • 步骤2:打开npmjs.com注册账号

  • 步骤3:本地登录提交(切记提交自己的包必须切换到国外服务器,下载在切换过来)

img

  • 步骤4:测试(创建day23开发目录,执行命令npm install itcast-php-teacher)

img

img

小总结

什么是NMP:就是一个工具,用于管理项目所需依赖

语法:npm install/uninstall 模块/包(ps. -g命令行执行/全局目录 –save-dev开发环境)

服务器加速:通过nrm工具

自定义脚本命令:修改package.json的scripts键即可

自定义发布:node login & node publish


文章作者: 哈雅布撒
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 哈雅布撒 !
  目录