前端技术-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 包名

相关文章
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章介绍了npm的基础知识和常用命令,包括安装包、查看包信息、管理依赖等操作,并提供了如何删除npm安装的镜像以及如何彻底删除node_modules文件夹的具体步骤。
351 2
|
11月前
|
存储 JavaScript 前端开发
在NodeJS中使用npm包进行JS代码的混淆加密
总的来说,使用“javascript-obfuscator”包可以帮助我们在Node.js中轻松地混淆JavaScript代码。通过合理的配置,我们可以使混淆后的代码更难以理解,从而提高代码的保密性。
1083 9
|
存储 资源调度 JavaScript
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具。npm 是官方默认的包管理器,提供依赖管理、安装和更新等功能;cnpm 是由阿里巴巴开发的 npm 镜像,专为中国大陆用户优化,解决下载速度慢的问题;pnpm 通过硬链接技术提高安装速度并节省磁盘空间,特别适合磁盘资源紧张的环境。三者命令类似,但各有特色,开发者可根据需求选择合适的工具。
1611 5
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章是关于npm包管理工具的学习、使用指南,包括npm概述、基础命令和如何安装webpack。
521 3
npm学习一:npm 包管理工具 学习、使用。
|
缓存 JavaScript 前端开发
拿下奇怪的前端报错(三):npm install卡住了一个钟- 从原理搞定安装的全链路问题
本文详细分析了 `npm install` 过程中可能出现的卡顿问题及解决方法,包括网络问题、Node.js 版本不兼容、缓存问题、权限问题、包冲突、过时的 npm 版本、系统资源不足和脚本问题等,并提供了相应的解决策略。同时,还介绍了开启全部日志、使用替代工具和使用 Docker 提供 Node 环境等其他处理方法。
12916 2
|
缓存 资源调度 前端开发
前端研发链路之包管理器
本文首发于微信公众号“前端徐徐”。作者徐徐将探讨前端研发链路中的包管理器,分析 Npm、Yarn 和 Pnpm 的特点与应用场景,帮助开发者选择最适合项目的包管理工具,提升开发效率和项目稳定性。文章涵盖包管理器的基本概念、解决的问题、组成部分及各工具的优缺点对比。
287 2
|
数据安全/隐私保护
发布一个npm包
发布一个npm包
432 2
|
缓存 前端开发 JavaScript
前端架构思考:代码复用带来的隐形耦合,可能让大模型造轮子是更好的选择-从 CDN 依赖包被删导致个站打不开到数年前因11 行代码导致上千项目崩溃谈谈npm黑洞 - 统计下你的项目有多少个依赖吧!
最近,我的个人网站因免费CDN上的Vue.js包路径变更导致无法访问,引发了我对前端依赖管理的深刻反思。文章探讨了NPM依赖陷阱、开源库所有权与维护压力、NPM生态问题,并提出减少不必要的依赖、重视模块设计等建议,以提升前端项目的稳定性和可控性。通过“left_pad”事件及个人经历,强调了依赖管理的重要性和让大模型代替人造轮子的潜在收益
455 0
|
前端开发 JavaScript 开发工具
从零开始:构建、打包并上传个人前端组件库至私有npm仓库的完整指南
从零开始:构建、打包并上传个人前端组件库至私有npm仓库的完整指南
2854 0
|
资源调度 前端开发 安全
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
1344 0

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
    874
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    401
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    305
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    271
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    399
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    582
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    609
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    186
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    527
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    343
  • 推荐镜像

    更多
  • NPM