node.js入门学习(三)--npm
一、npm介绍
1)npm:node package manager是node.js默认的以js编写的软件包管理系统
官网:www.npmjs.com
文档:docs.npmjs.com
2)提到npm可能指的是:
npm这个网站
npm这个js代码仓库
npm客户端
3)npm是node.js默认的软件包管理系统。安装完node后,会默认安装好npm。
4)npm本身也是基于node.js开发的包(软件)
5)查看当前npm版本 npm -v
6)更新npm: npm install npm@latest -g
二、npm的使用
1)在https://www.npmjs.com网站搜索找到需要的包
2)在项目的根目录下, 执行npm install 包名称,本地安装
3)在node.js代码中通过require('包名');加载该模块
注意:通过“npm install 包名称” 安装的包,会自动下载到当前目录的node_modules目录下
4)npm全局安装
- npm install 包名 -g
- 全局安装指的是把包安装成了一个命令行工具;项目中要使用这个模块仍然需要安装到本项目中。
- 例如:
// 通过npm全局安装mime.js
npm install mime -g
// 安装完毕后可以在命令行直接使用
mime a.css
mime a.doc
- npm全局安装实际做了2件事:
1)下载包到c:\Users\username\AppData\Roaming\npm\node_modeles
2) 创建一段命令行执行的代码
5)npm init [-y] 初始化创建一个package.json
6)npm root -g:查看全局安装目录,比如c:\Users\username\AppData\Roaming\npm\node_modeles
7)安装cnpm: npm i cnpm -g
三、Modules和Packages区别
1)包是一个文件或目录,必须有一个package.json来描述,就可以是一个包
2)模块可以是任何一个文件或目录,只要能被node.js通过require加载即可
四、package.json
1)package.json文件:包(或项目)描述文件
package.json常见的项有:
name 包的名字,必须项
version 包的版本,必须项
description 包描述
author 包的作者
main 包的入口js文件,从main字段这里指定的那个js文件开始执行
dependencies 依赖的其他包
2)如何创建package.json
- npm init [-y] 初始化创建一个package.json;当然手动创建也可以
- 注意:项目根目录不能有中文,最好不要有大写字母
- 必须包含name和version字段
五、package-lock.json文件介绍
npm 5.x版本以后,当引入第三方包时,会自动创建package-lock.json
package-lock.json里面包含引入第三方包的所以依赖的包的信息,使得npm下载更快
node.js入门学习(三)--npm的更多相关文章
- 极简 Node.js 入门 - 1.4 NPM & package.json
极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...
- Node.js入门学习笔记(三)
基于事件驱动的回调 这个问题不好回答,不过这是Node.js原生的工作方式.它是事件驱动的,这也是它为什么这么快的原因.你可以花一点时间阅读一下Felix Geisendörfer的大作 Unders ...
- node.js入门学习(四)--Demo图书的增删改查
需求:图书的增删改查,图书数据保存在data.json文件中. 1.Demo结构: 2.首先下载安装node.js,配置环境变量:参考博客 3.项目初始化 1)创建项目根目录node-hello,进入 ...
- node.js入门学习(五)--Demo模块化改造
1.node.js中模块的分类 1)node.js内置模块(核心,原生) 所有内置模块在安装node.js时就已经编译成二进制文件,可以直接加载运行(速度较快),部分内置模块,在node.exe这个进 ...
- node.js入门学习(一)环境安装,REPL,fs模块,path模块,http模块
一.node.js介绍 1.1.node.js是什么 官网首页总结:Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时. 1)node.js是一个开发平台,就像j ...
- Node.js入门学习笔记(一)
先来个最常见的"Hello World!". 打开你最喜欢的编辑器(我用的是Sublime Text),创建一个helloWorld.js的文件.我们要做的就是向stdout输出& ...
- node.js入门(三)调式
1.安装调式工具 打开命令行工具,输入以下内容,然后回车. npm install -g node-inspector 等待安装成功呢后,我们就可以使用 node-debug 文件名 这个命令来调式我 ...
- Node.js基础学习三之登录功能
本篇介绍Node.js访问数据库并返回数据给客户端 需求基于Node.js学习(二) 数据库请下载:user.sql 1.创建user 实体类(model-user.js) function User ...
- node.js入门学习笔记整理
(1)node Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境. Node与javaScript的区别在于,javaScript的顶层对象是window,而no ...
随机推荐
- Metinfo5.1 /message/access.php SQL注入漏洞
- yum源迁移(思路具体操作之后加)
准备工作,有一台能联网的机器装有liunx系统 首先在联网机器下载yum系列包(yum命令如果不存在的话只能通过安装包的形式进行安装这里不考虑yum命令不存在情况) 修改配置文件使得yum命令只下载不 ...
- C# 字符串、字节数组互相转换
/// <summary> /// MD5加密 /// </summary> /// <param name="sender"></par ...
- numpy中的快速的元素级数组函数
numpy中的快速的元素级数组函数 一元(unary)ufunc 对于数组中的每一个元素,都将元素代入函数,将得到的结果放回到原来的位置 >>> import numpy as np ...
- Input常用的输入框验证(正则)
1.只是不能输入空格 <input type="text" οnkeyup="this.value=this.value.replace(/^ +| +$/g,'' ...
- 【leetcode 136】136. Single Number
要求:给定一个整数数组,除了其中1个元素之外,其他元素都会出现两次.找出这个只出现1次的元素. 例: array =[3,3,2,2,1] 找出元素1. 思路:最开始的想法是用两次for循环,拿 ...
- 集合类Hash Set,LinkedHashSet,TreeSet
集合(set)是一个用于存储和处理无重复元素的高效数据结构.映射表(map)类似于目录,提供了使用键值快速查询和获取值的功能. HashSet类是一个实现了Set接口的具体类,可以使用它的无参构造方法 ...
- iperf测试流量转发(nginx反向代理tcp/udp)
一.准备工作 服务器1:192.168.33.102 搭建nginx服务,作为反向代理的中转站 服务器2:192.168.33.103 nginx要反向代理的服务器 服务器3:192.1 ...
- LDO ,开关电源DC-DC的优缺点
一般LDO电源自身的功耗为(Vin-Vout)*Iout,因此这两者越大,功耗也越大,效率也就越低. LDO ,开关电源DC-DC的优缺点(2008-11-06 22:40:23)转载标签: 电源杂谈 ...
- laravel-admin利用ModelTree实现对分类信息的管理
根据laravel的基本操作步骤依次完成如下操作:主要是参考laravel-admin内置的Menu菜单管理的功能,利用ModelTree实现业务中的Tree数据管理. 1. 创建模型 php art ...