前端技术-npm 包管理工具 | 学习笔记

简介: 简介:快速学习前端技术-npm 包管理工具

开发者学堂课程【微服务+全栈在线教育实战项目演练(SpringCloud Alibaba+SpringBoot):前端技术-npm 包管理工具 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/667/detail/11319


前端技术-npm 包管理工具

 

内容分介绍

一、npm 简介

二、演示 npm 具体操作


一、npm 简介

1、什么是 NPM

NPM 全称 Node Package Manager,是 Node.js 包管理工具,是全球最大的模块生态系统,里面所有的模块都是开源免费的;也是 Nodejs 的包管理工具,相当于前端的 Maven (在后端开发中,使用过 maven,maven 用于构建项目管理 jar 依赖,联网下载依赖,npm 类似于 maven 用在前端中,管理前端js依赖,联网下载 js 依赖,比如 jquery)

2.安装 npm

在安装 node.js 时 npm 也会安装上

查看是否安装成功,使用命令 npm-v

在终端中打开

e:\work\vs1010\axiosdemo>npm-v

6.4.1

回车出现

e:\work\vs1010\axiosdemo>证明 npm 已经安装成功

3.NPM 工具的安装位置

通过 npm 可以很方便地下载 js 库,管理前端工程。

Nodejs 默认安装的 npm 包和工具的位置:Nodejs 目录\node_modules

在这个目录下你可以看见 npm 目录,npm 本身就是被 NPM 包管理器管理的一个工具,说明 Node.js 已经集成了 npm 工具

 

二、演示 npm 具体操作

1.npm 项目初始化操作

新建文件夹名为 npmdemo,前端不仅是简单写页面,里面同样可以做各种功能,npm 对项目进行初始化,使它变成前端项目,不仅仅是一个普通文件夹

在 npmdemo 右键打开终端,使用命令 npm init,

e:\work\vs1010\axiosdemo>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.

see ´npm help json'for definitive documentation on these fields

and exactly what they do.

Use ´npm install 'afterwards to install a package and

save it as a dependency in the package.json file.

Press ^C at any time to guit.

package name: <npmdemo>

这里不是报错,是让你输入信息,一般使用默认信息 package name(包名字)为npmdemo(项目名字)点击回车

version:(1.0.0)版本号

description:项目描述

entry point:(index.js)  程序入口前端入口一般为js文件

test command:测试的东西

git repository:git的仓库

keywords:

author:

license:(ISC)

About to write to e:work\vs1010\npmdemo\package.json:  

Is this OK? (yes)是否确定,写yes回车出现

e:\work\vs1010\axiosdemo>表明项目初始化完成

初始化完成后,可以看到在 npmdemo 下出现一个文件夹,文件名为package.json,类似于后端 pom.xml 文件

刚才操作过程中点了很多次回车,如何让它全部使用默认不需要点击回车?

需要将命令简化,e:\work\vs1010\axiosdemo>npm init-y (-y表示使用默认)回车后文件直接生成

"name": "npmdemo"

"version": "1.0.0",

"description":""

"main": "index.js",

回车后出现这些基本信息,表明初始化已经做到

2.npm 下载 js 依赖

(1)修改 npm 镜像

NPM 官方的管理的包都是从http://npmjs.com下载的,但是这个网站在国内速度很慢。

这里推荐使用淘宝NPM镜像http://npm.taobao.org/,淘宝NPM镜像是 一个完整npmjs.com 镜像,同步频率目前为10分钟一次,以保证尽量与官方服务同步。

设置镜像地址:

#经过下面的配置,以后所有的 npm install 都会经过淘宝的镜像地址下载  

npm config set registry https://registry.npm.taobao.org

#查看 npm 配置信息

npm config list

e:\work\vs1010\npmdemo>npm config set registry https://registry.npm.taobao.org首先设置淘宝镜像回车出现e:\work\vs1010\npmdemo>

查看镜像是否成功e:\work\vs1010\npmdemo>后加npm config list回车

e:\work\vs1010\npmdemo>npm config set registry https://registry.npm.taobao.org e:\work\vs1010\npmdemo>npm config list

;cli configs

metrics-registry ="https://registry.npm.taobao.org/"

scope=""

user-agent -="npm/6.4.1node/v10.14.2 win32 x64"  

;userconfig c:\users\lenovo\.npmrc

registry="https://registry.npm.taobao.org"

;builtin config undefined

prefix = "c:\\users\\lenovo\\AppData\\Roaming\\npm"

;node bin location =D:\Program Files\nodejs\node.exe

;cwd=e:\work\vs1010\npmdemo

;HOME=C:\Users\lenovo

;"npm config ls -l" to show all defaults.

e:\work\vs1010\npmdemo>

表明淘宝镜像已经完成

(2)npm install 命令的使用(npm install 依赖名称)

e:\work\vs1010\npmdemo>npm install jquery

回车

npm notice created a lockfile as package-lock.json. You should commit this file.  

npm  wARN npmdemo@1.0.0No description

npm  wARN npmdemo@1.0.0 No repository field.

+jquery@3.4.1

added 1 package from l contributor ln 1.796s

e:\work\vs1010\npmdemo>

下载以后 npmdemo 下多出 node_modules 文件夹,

node_modules 下有 jQuery,还多了一个 package-lock.json 文件

package-lock.json 中多了

"dependencies":{

"jquery":"^3.4.1"

就是依赖,3.4.1表示目前所下依赖为最新版本lock表示锁定当前项目只能用3.4.1版本,不可以用别的版本

#如果安装时想指定特定的版本

npm install jquery@2.1x

(3)根据 package.json 文件下载依赖

在配置文件中有

"dependencies":{

"jquery":"^3.4.1"

使用 npm install 命令下载

e:\work\vs1010\npmdemo>npm install

npm wARN npmdemo@1.0.0No description

npmWARN npmdemo@1.0.0 No repository field.  

added 1 package from 1 contributor in 0.852s  

e:\work\vs 1010\npmdemo>

文件夹出现,表明依赖下载成功,必须在项目文件中点击右键打开进行操作,不可以在别的文件中打开操作

(4)项目中相关插件

devDependencies 节点:开发时的依赖包,项目打包到生产环境的时候不包含的依赖

#使用-D 梦数将依赖添加到 devDependencies 节点

npm install --save-dev eslint

#或

npm install  -Deslint

全局安装

Node.js 全局安装的 npm 包和工具的位置:用户目录\AppData\Roaming\npm\node_modules  #一些命令行工具常使用全局安装的方式

npm install -g webpack

(5)其他命令

哈哈哈哈哈

#更新包(更新到最新版本)  

npm update 包名

#全局更新

npm update -g 包名

#卸载包

npm uninstall 包名  

#全局卸载

npm  uninstall -g 包名

相关文章
|
8月前
|
存储 JavaScript 前端开发
在NodeJS中使用npm包进行JS代码的混淆加密
总的来说,使用“javascript-obfuscator”包可以帮助我们在Node.js中轻松地混淆JavaScript代码。通过合理的配置,我们可以使混淆后的代码更难以理解,从而提高代码的保密性。
786 9
|
11月前
|
前端开发 Java 开发工具
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
975 18
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
|
11月前
|
存储 资源调度 JavaScript
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具。npm 是官方默认的包管理器,提供依赖管理、安装和更新等功能;cnpm 是由阿里巴巴开发的 npm 镜像,专为中国大陆用户优化,解决下载速度慢的问题;pnpm 通过硬链接技术提高安装速度并节省磁盘空间,特别适合磁盘资源紧张的环境。三者命令类似,但各有特色,开发者可根据需求选择合适的工具。
1170 5
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章是关于npm包管理工具的学习、使用指南,包括npm概述、基础命令和如何安装webpack。
449 3
npm学习一:npm 包管理工具 学习、使用。
|
缓存 JavaScript 前端开发
拿下奇怪的前端报错(三):npm install卡住了一个钟- 从原理搞定安装的全链路问题
本文详细分析了 `npm install` 过程中可能出现的卡顿问题及解决方法,包括网络问题、Node.js 版本不兼容、缓存问题、权限问题、包冲突、过时的 npm 版本、系统资源不足和脚本问题等,并提供了相应的解决策略。同时,还介绍了开启全部日志、使用替代工具和使用 Docker 提供 Node 环境等其他处理方法。
10414 2
|
缓存 前端开发 JavaScript
前端架构思考:代码复用带来的隐形耦合,可能让大模型造轮子是更好的选择-从 CDN 依赖包被删导致个站打不开到数年前因11 行代码导致上千项目崩溃谈谈npm黑洞 - 统计下你的项目有多少个依赖吧!
最近,我的个人网站因免费CDN上的Vue.js包路径变更导致无法访问,引发了我对前端依赖管理的深刻反思。文章探讨了NPM依赖陷阱、开源库所有权与维护压力、NPM生态问题,并提出减少不必要的依赖、重视模块设计等建议,以提升前端项目的稳定性和可控性。通过“left_pad”事件及个人经历,强调了依赖管理的重要性和让大模型代替人造轮子的潜在收益
312 0
|
前端开发 JavaScript 开发工具
从零开始:构建、打包并上传个人前端组件库至私有npm仓库的完整指南
从零开始:构建、打包并上传个人前端组件库至私有npm仓库的完整指南
2483 0
|
资源调度 前端开发 安全
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
1062 0
|
12月前
|
JavaScript
node环境之Error: Cannot find module ‘chalk’ 报错无法解决的问题—-网上说让你npm install chalk 基本是没有用的-优雅草央千澈解决方案
node环境之Error: Cannot find module ‘chalk’ 报错无法解决的问题—-网上说让你npm install chalk 基本是没有用的-优雅草央千澈解决方案
824 13
node环境之Error: Cannot find module ‘chalk’ 报错无法解决的问题—-网上说让你npm install chalk 基本是没有用的-优雅草央千澈解决方案
|
11月前
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库
320 3
node环境之当我们遇到需要付费的依赖库@fortawesome/fontawesome-pro导致npm install无法进行怎么办-fontawesome-pro依赖库

推荐镜像

更多
  • NPM