node
-
node是基于chrome v8引擎javascript运行时环境
-
node模块
-
每一个js文件就是一个模块
-
每一个模块都是独立
-
-
模块化管理方案
-
实现一个模块访问另一个模块里面的属性和方法
-
导出
-
单个
-
exports.导出名 = 数据
-
-
多个
-
module.exports = { ... }
-
-
-
导入
-
require()
-
导入是一个对象格式
-
-
-
模块分类
-
内置模块
-
引入直接写模块名
-
-
第三方模块
-
引入直接写模块名
-
-
自定义模块
-
引入是要写相对路径
-
-
-
第三方依赖(模块)
-
下载安装这个依赖
-
npm i 依赖名
-
www.npmjs.com
-
当前目录会生成一个node_modules,里面存放了我们下载的依赖
-
-
引入使用
-
-
项目是由我们初始化搭建
-
初始化操作
-
npm init
-
会生成一个
package.json
-
-
以后安装的所有依赖都会记录在dependencies
-
我把项目分享给别人,不需要发送node_modules,只需要把package.json发给别人,别人执行npm i就可以自动找到package.json里面依赖,并且逐个安装
-
-
如果我们拿到别人的项目
-
如果没有node_modules,确认里面有没有package.json
-
只需要执行npm i,就可以和别人安装同样的依赖
-
-
卸载依赖
-
执行npm un 依赖名称
-
删除node_modules,移出package.json里面某一一行依赖记录,再执行npm i
-
-
安装依赖可以指定版本
-
如果没有指定版本号 默认安装的是最新的
-
npm i 依赖名称@版本号
-
-
安装依赖方式分类
-
全局依赖
-
安装
-
依赖安装之后不是导入到项目里面使用的,把它当成一个控制台里面命令使用
-
npm i 依赖名称 -g[--global]
-
这种安装不会在当前目录生成node_moudles,这种安装目录
C:\Users\Administrator\AppData\Roaming\npm
-
这种安装不会记录到package.json
-
安装之后就可以在控制台里面 使用sass这个命令
-
-
卸载
-
npm un 依赖名称 -g
-
如果这个命令执行之后还可以使用,需要手动去卸载这个命令,找到安装目录,手动删除
-
-
开发中的依赖(项目进行时)
-
开发项目的时候需要用一个压缩的依赖,这个依赖只需要在开发的时候使用,开发完成之后就不需要使用了
-
只是在开发中使用,打包上线的不会将这个依赖打包进去的
-
npm i 依赖名称 --save-dev[-D]
-
会记录到package.json的devDependencies
-
-
生产(上线)中的依赖(项目完成时)(包含开发的环境)
-
有些依赖比如jquery需要在开发中使用也需要在上线的时候
-
npm i 依赖名称 默认是当成生产方式安装
-
npm i 依赖名称 --save[-S]
-
会记录到package.json的dependencies
-
-
-
npm下载源
-
默认下载源是npm的官方的服务器 在国外的
-
国内一些大厂将官方的服务器资源复制了一份放到了国内
-
-
切换npm下载源
-
使用一个nrm工具,利用nrm的命令来切换
-
npm i nrm -g
-
nrm --version
-
nrm test
-
nrm use 名称
-
切换之后我们所有的下载都是从切换的下载源服务器进行下载
-
npm insatall 依赖
-
-
使用cnpm的命令
-
npm install cnpm -g -registry=https://registry.npm.taobao.org
-
以后我们使用cnpm命令安装的依赖都是从淘宝服务器下载的
-
cnpm install 依赖
-
-
用npm安装依赖还是从官方的服务器
-
npm install 依赖
-
-
-
nvm使用
-
可以去切换node版本
-
nvm install node版本号
-
npm view jquery versions 查看依赖包所有版本
-
nvm list
-
16.14.1 12.14.1r
-
-
nvm use 12.14.1
-
nvm list 16.14.1
-
12.14.1
-
-
node -v
-