| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> Node.js学习十一(包管理器npm与yarn) -> 正文阅读 |
|
[JavaScript知识库]Node.js学习十一(包管理器npm与yarn) |
文章目录一、Node.js中的npm包管理工具?????? ??????如果安装的是旧版本的 npm,可以很容易得通过 npm 命令来升级,命令如下:
??????Linux系统命令如下:
??????我们可以在这个网站https://www.npmjs.com/(全球最大的包共享平台)里,寻找我们需要的各种包的信息。 1、安装包(1)本地安装
可以简写为:
(2)全局安装
可以简写为:
(3)本地安装和全局安装的区别本地安装: (4)举例??????如果我们想在d盘某目录下下载一个express包,方法如下: 2、安装指定版本的包??????默认情况下,使用npm install命令安装包的时候,会自动安装最新版本的包,如果需要安装指定版本的包,可以在包名之后,通过@符号指定具体版本,例如:
3、包的语义化版本规范??????包的版本号以“点分十进制”形式定义,总共有三位数字,如4.17.2
??????版本号提升的规则:只要前面的版本号增长了,后面的版本号归零。 4、包管理配置文件package.json??????用来记录与项目有关的一些配置信息,如:项目的名称、版本号、描述等,项目中都用到了哪些包,哪些包只在开发期间会用到,哪些包在开发和部署时需要用到。 5、dependencies节点??????我们可以注意到,在package.json文件中,有一个dependencies节点,它专门用来记录使用npm install命令安装了哪些包。如: 6、快速创建package.json??????当我们安装的包太多,每一个版本号又不同时,我们可以使用npm init -y 命令,在所处目录下生成一个package.json文件,里面会记录安装的包的信息。 7、卸载包
??????此命令执行成功后,会把卸载的包,自动从package.json的dependencies节点中移除。 8、devDependencies节点??????如果某些包只在项目开发阶段会用到,在项目上线之后不会用到,则建议把这些包记录到devDependencies节点中,与之对应的,如果某些包在开发和项目上线之后都要用到,则建议把这些包记录到dependencies节点中。
9、包下载慢怎么办??????在使用npm下包的时候,默认从国外的https://registry.npmjs.org/服务器下载,网络传输需要经过漫长的海底光缆,所以下载速度慢。 (1)淘宝NPM镜像服务器??????淘宝在国内搭建了一个服务器,专门把国外服务器上的包同步到国内的服务器,然后在国内提供下包的服务,从而极大的提高了下包的速度。 (2)切换npm的下包镜像源??????下包的镜像源就是指下包的服务器地址,下面是切换镜像源时需要用到的几个命令。
(3)nrm小工具??????为了更方便的切换下包的镜像源,我们可以安装nrm小工具,利用nrm提供的终端命令,可以快速查看和切换下包的镜像源。
(4)cnpm??????淘宝团队吧NPM官网的插件同步到了中国的服务器,可以从这个服务器上稳定下载资源。
??????CNPM与NPM用法一致,执行时将NPM改为CNPM就可以。如: 10、包的分类(1)项目包??????那些被安装到项目的node_modules目录中的包,就是项目包。
(2)全局包??????在执行npm install命令时,如果提供了-g参数,则会把包安装为全局包。
注意:只有工具性质的包,才有全局安装的必要性,因为它们提供了好用的终端命令。判断某个包是否需要全局安装后才能使用,可以参考官方提供的使用说明。如nrm小工具,我们可以在https://www.npmjs.com/网站里搜索它,可以看到安装建议 (3)i5ting_toc??????i5ting_toc是一个可以把md文档转换为html页面的小工具,使用步骤如下:
??????调用i5ting_toc,轻松实现md转html的功能
(4)规范的包结构??????一个规范的包,它的组成结构,必须符合以下三点要求: 11、开发属于自己的包(1)需要实现的功能??????格式化日期、转义HTML中的特殊字符、还原HTML中的特殊字符。 (2)初始化包的基本结构??????新建bag文件夹,作为包的根目录。 (3)package.json
(4)在index.js中定义格式化时间的方法
(5)在index.js中定义转义HTML的方法
(6)在index.js中定义还原HTML的方法
注意:函数定义好之后,要把它们暴露出去。
(7)编写包的说明文档??????包根目录中的README.md文件,是包的使用说明文档。通过它,我们可以事先把包的使用说明,以markdown的格式写出来,方便用户参考。具体内容只要能把包的作用、用法、注意事项等描述清楚就行。 (8)发布包??????首先注册npm账号,然后在终端里面执行npm login命令,依次输入用户名、密码、邮箱后即可登录成功。(注意此时的下包服务器必须是官方npm服务器) (9)删除已发布的包??????运行 二、yarn包管理工具??????yarn是一款快速,可靠,安全的依赖包管理工具 1、为什么要使用 yarn??????因为它有个缓存机制,当我们第一次下载的包,就会被缓存下来,当我们下次下载的时候,就直接载缓存里面找到使用,就省去了继续下载的时间 2、安装 yarnnpm install yarn 3、查看版本号yarn --version 4、初始化yarnyarn init 5、安装包yarn add 包名@版本号 6、移除包yarn remove 包名 7、打印缓存的包名yarn cache ls 8、清除缓存yarn cache clean 9、升级版本号yarn version 10、运行程序yarn run 文件 11、打包程序yarn pack --指定名字 三、REPL环境??????在命令行键入 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 10:39:35- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |