快捷搜索:  汽车  科技

npm运行指令教程(npm原理和使用)

npm运行指令教程(npm原理和使用)npm install非全局方式安装模块不带参数的npm install会安装模块的最新版npm init可以采用默认值,直接回车,生成jackage.json.自动生成的jackage.json文件安装模块最新版

示例使用环境为: nodejs 16.17.1 LTS npm概念

npm: 全称(Node Package Manager) 是node的包管理工具。就是下载,管理第三方代码模块的工具。它随Node一起发布。其中心管理仓库是 npmjs.com.

查询npm版本

npm -v

npm运行指令教程(npm原理和使用)(1)

package.json

node是通过package.json文件,来指定下载的第三方库的名称和版本。

生成package.json

npm init

npm运行指令教程(npm原理和使用)(2)

npm运行指令教程(npm原理和使用)(3)

可以采用默认值,直接回车,生成jackage.json.

npm运行指令教程(npm原理和使用)(4)

自动生成的jackage.json文件

npm常用命令

安装模块最新版

不带参数的npm install会安装模块的最新版

npm install

npm运行指令教程(npm原理和使用)(5)

非全局方式安装模块

通过指定tag安装模块

npm install tag

指定版本号,如果版本号不存在,安装会失败

npm install version

npm运行指令教程(npm原理和使用)(6)

指定版本号的范围

npm install 范围表达式

npm运行指令教程(npm原理和使用)(7)

如果本机有多个项目公用模块,可以采取全局安装方式

npm install -g 模块名

npm运行指令教程(npm原理和使用)(8)

全局模式安装模块

查看全局模式模块的安装目录

npm config get prefix

npm运行指令教程(npm原理和使用)(9)

使用不带参数的 npm install命令会把安装模块的名称和版本号写入到package.json文件的depengencies字段。

版本号规则表达式如下:

npm运行指令教程(npm原理和使用)(10)

--save-dev 参数:

npm install --save-dev 参数:会把对应的模块信息写入devDependencies字段。

生成开发版本的依赖库。

npm install --save-dev

npm运行指令教程(npm原理和使用)(11)

用--save-dev参数安装模块

npm运行指令教程(npm原理和使用)(12)

生成devDependencies字段的package.json

正式上线的时候用 --production 这样,这个命令会忽略devDependencies字段,只安装devDependcies字段下定义的模块。

npm install --productionnode_modules - 非全局下载的模块的保存目录

执行npm install命令后,npm会根据package.json文件中描述的依赖安装对应的模块,并且生成node_modules目录,非全局安装的模块都会放在这个目录里面。

清除npm缓存

npm缓存文件一般会很大,占用好几个G的空间。

查看npm缓存目录

npm config get cache

清空npm缓存空间

npm cache clean -force

npm运行指令教程(npm原理和使用)(13)

清空npm缓存

package.json控制版本的缺点:

package.json可以控制一个模块的版本号,但是无法控制其依赖的版本。多次不同时间运行npm install会产生依赖模块版本不一致的情况。

那可以通过指定depengencies字段的具体版本来解决吗?不太理想,因为有的模块会因bug而升级,指定了版本,有可能由于原有的bug而导致构建失败。

package-lock.json

存储依赖模块的详细信息文件。

packeage-lock.json文件会在使用npm install时自动生成 ,其把模块的详细依赖信息写入了这个文件。

dependencies属性包含了node_module文件夹下的所有模块的版本号和下载地址。

我们在项目提交版本源码的时候,把package.json和package-lock.json文件都保存在源码库中提交是一个好的习惯。这样,再次构建的时候,会按照package-lock.json文件构建。

npm运行指令教程(npm原理和使用)(14)

带有依赖模块详细信息的package-lock json

使用script字段构建npm项目

npm运行指令教程(npm原理和使用)(15)

npm run test

把你要运行的命令行,放在script字段中。然后可以在命令行中,运行你指定的关键字。

注意点:npm test的时候,会先从node_module中的.bin目录里面查找对应的可执行文件。

如果没找到,才去系统的环境变量里面找。这样做的好处是避免了,使用全局变量造成的版本冲突。

猜您喜欢: