npm以及node.js中包的使用

node.js的第三方模块也叫做包

1.搜索包的网址:hhtps://www.npmjs.com/
2.下载需要的包:https://registry.npmjs.org/

npm初体验
1.格式化时间的传统做法

2.格式化时间的高级做法
使用npm包,安装格式化时间的包moment
使用require()导入格式化时间的包
参考moment的官方api文档对时间进行格式化

2.1使用方式
const moment = require('moment')
调用moment函数得到当前的时间
针对当前的时间,调用format()方法,按照指定的格式时间进行格式化
const dt = moment().format('YYYY-MM-DD HH:mm:ss')
console.log(dt)

3.在项目中安装包
npm install + 包的完整名称
简写 npm i + 包的完整名称

文档查阅网站npmjs.com/

4.安装指定包的版本 npm i [email protected]

5.如何在项目中记录用到了哪些包
在项目的根目录中,创建一个叫package.json的配置文件,用来记录安装用了哪些包
方便剃齿node_modules目录,团队之间共享项目的源代码

在项目开发中,要把node_modules文件夹添加到 .gitignore忽略文件中

6.如何快速创建package.json
在执行命令所处的目录中,快速创建package.json文件
1.npm init -y 这个命令只能在英文的目录下成功运行,
2.包管理文件的dependencies节点:专门用来记录npm install 命令安装了哪些包
3.一次一行代码也可以安装多个包
dependencies节点
4.一次性安装所有包 npm i 读取dependencies中的所有节点
5.卸载包
npm uninstall 包名   卸载完成后会把dependencies中的节点信息删除掉

7.包管理配置文件devDependencies
如果某些包只在项目开发阶段会用到,在项目上线之后不糊用到,
则建议把这些包记录到devDpendencies节点中。

与之对应的如果某些包在开发和项目上线之后都需要用到
则建议把这些包记录到dependencies节点中

使用如下命令:将包记录到devDependencies
npm i 包名 -D
上述是简写,完整写法如下
npm install 包名 --save-dev

8.解决包下载速度慢的问题
1.淘宝NPM镜像服务器
2.切换npm的下包镜像源
(1)查看当前的下包镜像源
npm config get registry
(2)将包的镜像源切换为淘宝镜像源】
npm config set registry=https://registry.npm.taobao.org/
(3)检查镜像源是否下载成功
npm config get registry

9.nrm工具:切换下包镜像源
(1)通过npm的包管理器,将nrm安装为全局可用的工具
npm i nrm -g
(2)查看所有可用的镜像源
nrm ls
(3)将下包的镜像源切换为taobao镜像
nrm use taobao


10.npm包的分类
(1)项目包
那些被安装到项目的node_modules目录中的包,都是项目包
(2)开发依赖包,记录到devDependencies  安装加-D
(3)核心依赖包,记录到dependencies
(4)全局包
执行npm i -g则会把包安装为全局包
安装全局包 npm i -g
卸载全局包 npm uminstall 包名 -g
查看全局包的路径:npm root -g

11.i5ting_toc包
i5ting_toc是一个可以吧md文档转为html页面的小工具,使用步骤如下
(1)将i5ting_toc安装为全局包
npm install -g i5ting_toc
(2)调用i5ting_toc,轻松实现md转html的功能
i5ting_toc -f 要转的md文件路径 -o

12.规范包的结构
(1)包必须以单独的目录而存在
(2)包的顶级目录下要必须包含package.json这个包管理配置文件
(3)package.json中必须包含name,version,main这三个属性,分别代表包的名字,版本号,包的入口

13.开发属于自己的包
(1)导入自己写的包
const name = require(路径)
const name2 = name.方法()
(2)初始化包的基本结构
1.新建itheima-tools文件夹,作为包的根目录
2.在ithema-toolswen文件夹中,新建如下三个文件
    package.json    包的管理配置文件
    index.js    包的入口文件
    README.md 包的说明文档

14.将不同的功能进行模块化拆分
(1)将格式化时间的功能,拆分到src->dateFormat.js中
(2)将处理HTML字符串的红牛,拆分到src->htmlEscape.js中
(3)在index.js中,导入两个模块,得到需要向外共享的方法
(4)在index.js中,使用module.exports把对应的方法共享出去
将每一个对象展开

15.编写包的说明文档
包根目录中的README.md文件,是包的使用说明文档。通过它,我们可以实现把包的使用说明
以markdown的格式写出来,方便用户参考。
该文档中只要把包的作用用法注意事项描述清楚即可
安装方式、导入方式、格式化时间、转义html中特殊字符、还原HTML中的特殊字符、开源协议
 

你可能感兴趣的:(npm,javascript,node.js)