1.包

  • Nodejs中除了它自己提供的核心模块(内置模块)外,我们可以自定义模块 ,也可以使用第三方模块Nodejs中的第三方模块由包组成,它可以通过包来对一组具有相互依赖关系的模块进行统一管理。
  • CommonJs包目录规范如下:
    • package.json:包描述文件
    • bin:用于存放可执行二进制文件的目录
    • lib:用于存放JavaScript代码的目录
    • doc:用于存放文档的目录

2.npm

1.npm介绍
  • npm是世界上最大的开放源代码的生态系统,我们可以通过npm下载各种各样的包,这些源代码(包)我们可以在 http://www.npmjs.com 中找到。
  • npm是跟随NodeJs一起安装的包管理工具,能解决NodeJs代码部署上的很多问题,常见的使用场景有以下几种:
    • 允许用户从NPM服务器下载别人编写的第三方包到本地使用(silly-datetime
    • 允许用户从NPM服务器下载并安装别人编写的命令行程序(工具)到本地使用(supervisor
    • 允许用户将自己编写的包或命令行程序上传到NPM服务器,供别人使用。
2.在NodeJs中通过NPM命令来下载第三方的模块(包)
  • 1.去http://www.npmjs.com网站找到自己想要安装的包

  • 2.进入项目根目录,使用下述命令进行安装

    npm i md5 --save
    
    • --save会将包信息自动填写到package.jsondependencies
    • 安装完后会在项目内产生一个node_moudles目录,该目录就是用来存放第三方模块的,项目最终提交时,是不需要提交node_moudles这个目录的,否则项目运行会报错
    • 安装依赖包时--save会将依赖信息写入package.json文件中,所以只需要提交该文件即可,别人拿到项目后运行npm -i即可自动下载所有第三方依赖包,如果安装依赖时没有使用--save,则最终会缺少模块而导致项目无法直接运行。
  • 3.引用模块

    var md5 = require("md5")
    
  • 4.看使用文档

3.NPM命令详解
  • 1.npm -v:查看npm版本
  • 2.使用npm命令安装模块
    npm install ModuleName --save
    
  • 3.使用npm命令卸载模块
    npm uninstall ModuleName
    
  • 4.npm list查看当前目录下已安装的node
    npm list
    
  • 5.npm info ModuleName查看ModuleName的版本
    npm info md5
    
  • 6.指定版本安装
    npm install jquery@1.8.0
    

3.package.json

1.定义
  • package.json定义了这项目所需要的各种模块以及项目的配置信息(比如名称、版本、许可证等元数据)
2.创建package.json
npm init
  • --yes:表示
3.package.json
{"name": "test",   // 名称"version": "1.0.0",  // 版本"description": "test",  // 描述"main": "main.js",  // 入口"keywords":["test"],"author": "fatpuffer",  // 作者"license": "MIT",  // 许可证"dependencies": {  // 依赖"md5": "^2.3.0"},"devDependencies": {  // 项目依赖的一些其他工具包 --save-dev"md5": "^2.3.0"}
}
  • ^:第一位版本号不变,后面两位取最新的
  • ~:表示前两位不变,最后一个取最新的
  • *:表示全部取最新的
  • :表示就安装此版本

四.淘宝镜像

1.官方网址
  • 1.npm包官网:http://www.npmjs.org
  • 2.npm淘宝镜像官网:https://npm.taobao.org
    • 淘宝NPM镜像是一个完整的npmjs.org镜像,可以代替官方版本,同步频率为10分钟一次,尽量保证和官方服务同步。
2.cnpm
  • 1.我们可以使用定制的cnpm(gzip压缩支持)命令行工具代替默认的npm

    npm install -g cnpm --registry=https://registry.npm.taobao.org
    
  • 2.使用cnpm安装第三方依赖包
    cnpm install md5 --save
    

5.Nodejs中的包、npm、第三方模块、package.json以及cnpm相关推荐

  1. npm使用入门(package.json)

    npm使用入门 crazygit 关注 2017.03.10 18:31 字数 1773 阅读 1617评论 0喜欢 10 NPM是什么 npm npm makes it easy for JavaS ...

  2. Nodejs 中的包、npm 、第三方模块、 package.json 以及 cnpm

    一.包与 NPM 包Nodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用第三方的 模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依赖关系的模块进行 统一管理 ...

  3. Nodejs 包与 NPM 第三方模块安装和 package.json 以及 CNPM

    包与 NPM Nodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用 第三方的模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依 赖关系的模块进行统一管理. 完 ...

  4. mac如何导入python第三方库_Mac系统中python idle导入第三方模块成功,ecplise导入python第三方模块失败解决方法...

    遇到一个比较纠结了4个月的问题,一直没有在意,今天实在忍受不了,尝试各种解决办法,终于把这个烦人的问题完美解决,不敢独享,写出来和各位大神共享. 问题:在mac OSx操作系统下,安装了python第 ...

  5. npm依赖文件package.json中^和~的含义

    想知道'^'是干嘛的,就要了解npm的语义版本控制.如果 Node.js 软件包中有一件很棒的事情,那就是它们都同意使用语义版本控制作为版本编号.语义版本控制的概念很简单:所有的版本都有 3 个数字: ...

  6. [转]npm生成的package.json文件中依赖项版本号前的波浪号(~)和插入符号(^)是啥意思?

    package.json一般也就长这么模样: {"name": "","description": "","v ...

  7. npm生成的package.json文件中依赖项版本号前的波浪号(~)和插入符号(^)是啥意思?

    package.json一般也就长这么模样: {"name": "","description": "","v ...

  8. npm系列:package.json

    1.关于packag.json的基础知识 这还是我最熟悉的package.json吗? 2.npm发包流程 npm发包流程 - 知乎 3.sh: vue-cli-service: command no ...

  9. NPM 安装 TypeScript 和 npm 的 Invalid package.json 错误以及运行第一个typescript程序

    TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准(ES6 教程). TypeScript 由微软开发的自由和开源的编程语言. TypeScript 设计 ...

最新文章

  1. 探索 Swift 中的 MVC-N 模式
  2. ubuntu-Linux下如何安装Tensorflow?
  3. UA MATH565C 随机微分方程V Markov Family的特征函数
  4. 为什么敏捷方法能在软件开发中行之有效?
  5. poj 1208 Web Navigation(堆栈操作)
  6. C语言编程 简单展开扫雷游戏
  7. 计算机三维实体建模与应用教学要求,三维建模教学大纲.doc
  8. 如何给拍好的短视频配音?最简单的方法推荐!
  9. Matlab之inv函数
  10. Linux知识点整理(五)—— Linux 磁盘与文件系统管理
  11. 你的代码暴漏了你的年龄(毕业设计)--技术文档+程序源代码
  12. 谷歌浏览器与驱动下载,以及放置位置
  13. 一文阐述数据科学完整学习路线图
  14. Linux shell:fsck命令使用方法
  15. mysql 查看备份工具_MariaDB/MySQL备份和恢复(一):mysqldump工具用法详述【转】
  16. parallels恢复linux密码,Parallels安装Kali2.0遇到的问题及解决办法
  17. 猛学亚马逊:顾客至上 Obsession over customers
  18. tipsy 文件 弹窗 基于dagre-d3
  19. easyui 合并列_Easyui DataGrid 合并单元格
  20. python gil全局锁_什么是Python全局解释器锁(GIL)?

热门文章

  1. iNFTnews丨澳航推出NFT系列,全球还有哪些航空公司涉足NFT?
  2. 如何在ASP.NET Core中上传超大文件
  3. 18049 迭代法求平方根
  4. MATLAB中的各种文本说明换行操作
  5. PDMan未检测到jdk,jvm所需内存不足
  6. 到底是什么让我对学习如此上瘾?
  7. 面试官:什么?HTTP不重要?你是古代穿越过来的吧!
  8. Windows系统查询激活状态和时间的办法-Windows许可证即将过期
  9. yum安装fail2ban
  10. 大量数据(含图片)、格式自定义的 Excel 生成思路