Node.js学习笔记_No.04

npm与包的运用

案例:格式化时间
传统做法

在这里插入图片描述
dateFormat.js

//1. 定义格式化时间的方法
function dataFormat(dtStr) {
    const dt = new Date(dtStr)


    const y = dt.getFullYear()
    const m = padZero(dt.getMonth() + 1)
    const d = padZero(dt.getDate())

    const hh = padZero(dt.getHours())
    const mm = padZero(dt.getMinutes())
    const ss = padZero(dt.getSeconds())

    //`YYYY-MM-DD HH:mm:ss`
    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`

}

// 定义补0函数
function padZero(n) {
    return n > 9 ? n : '0' + n
}

module.exports = {
    dataFormat
}

test.js

//导入自定义的格式化时间的模块
const TIME = require('./dataFormat')

//调用方法,进行时间的格式化
const dt = new Date()
//console.log(dt) 未格式化
const newDT = TIME.dataFormat(dt)
console.log(newDT)
高级做法
//1. 导入所需的包 npm i moment(@版本号) 安装多个包 用空格 分隔
//注意导入的名称,就是装包时候的名称
const moment = require('moment')

const dt = moment().format('YYYY-MM-DD HH:mm:ss')
console.log(dt)

初次装包完成后,在项目文件夹下多一个node_modules的文件夹和package-lock.json的包管理配置文件
node_modules用来存放所有已安装到项目中的包。require()导入第三方包时,就是从这个目录中查找并加载包。
package-lock.json用来记录node_modules目录下的每一个包的下载信息eg:包的名字、版本号、下载地址。

版本号:第1位数字表示大版本(底层重构)、第2位数字表示功能版本、第3位数字表示Bug修复版本


包管理文件
  • 在项目根目录中,创建一个叫做package.json的配置文件,用来记录项目中安装了那些包。从而方便剔除node_modules目录之后,在团队成员之间共享项目的源代码
  • 在项目开发中,一定要把node_modules文件夹,添加到.gitgnore忽略文件中。
  • package.json文件中,有一个dependences节点,专门用来记录你使用npm install安装了哪些包
  • 一次性安装所有包:运行npm iinstall命令 一次性安装所有的依赖包
  • devDependencies节点:如果某些包只在项目开发阶段会使用,在项目上线后不会用到,则建议把这些包记录到devDependencies 节点中
  • dependencies 节点:某些包在开发和项目上线之后都需要用到,则建议把这些包记录到dependencies
//安装指定的包,并记录到`devDependencies`节点中
npm i 包名 -D

解决包下载慢的问题

淘宝NPM镜像服务器:淘宝在国内搭建了一个服务器,专门把国外官网服务器上的包同步到国内服务器,然后在国内提供下包服务,从而极大的提高了下包的速度。
镜像(Mirroring):是一种文件存储形式,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像

  • 下包的镜像源,指的就是下包的服务器地址
# 查看当前的下包镜像源
npm config get registry
# 将下包的镜像源切换为淘宝镜像源
npm config set regist=https://registry.npm.taobao.org/
# 检查镜像源是否下载成功
npm config get registry

为了更方便的切换下包的镜像源,我们可以安装nrm这个小工具,利用nrm提供的终端命令,可以快速查看和切换下载包的镜像源。

# 通过npm包管理器,将nrm 安装为全局可用的工具
npm i nrm -g
# 查看所有可用的镜像源
nrm ls
# 将下包的镜像源切换为 taobao 镜像
nrm use taobao
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值