node的包管理器----npm的使用
来源:互联网 发布:mysql数据库常用语句 编辑:程序博客网 时间:2024/05/16 19:45
当我们安装完node之后,npm就会自动安装在node目录下,那么我们就可以使用了
1.通过命令行使用
首先,我们安装包的时候有两种方式,一种是本地安装,一种是全局安装
(1)本地安装
在本地安装的时候,会将下载的包存储在本地项目的node_modules目录下面,安装的命令为下面所示,这种安装命令不会将安装信息保存到package.json文件,下面以安装模块lodash为例进行安装演示:
npm install lodash
(2)全局安装
在全局安装中,一般为一些命令行工具包的安装,可以在命令行直接使用,那么就需要在命令行进行安装,比如对文件格式进行校验的jshint的安装,如下面代码:
npm install -g jshint安装之后,就可以使用该命令进行对文件的校验了
而且能够进行安装位置的查看,我的安装位置时node下面的lib位置:
2.通过package.json文件使用
在学习了解了上面的安装方式之后,我们就可以进行对包的简单安装,那么,当我们有很多包安装时,我们就需要使用到package.json文件进行安装,首先来看看,package.json的基本格式:
{ "name": "react-basics-review", "version": "1.0.0", "description": "a practise of react study ", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "git+https://github.com/suwu150/react-basics-review.git" }, "author": "jkwu", "license": "ISC", "bugs": { "url": "https://github.com/suwu150/react-basics-review/issues" }, "homepage": "https://github.com/suwu150/react-basics-review#readme", "devDependencies": { "babel-plugin-transform-object-rest-spread": "^6.23.0", "babel-preset-es2015": "^6.24.1", "react": "^15.6.1" }}
如上面格式的代码,每当我们安装一个本地的包的时候,就会在devDependencies或dependencies里边以对象的形式追加一项,其中
devDependencies: 在开发和测试环境中需要依赖的包
dependencies: 在生产环境中需要依赖的包
那么,package.json都有那些优点呢:
*以文档的形式规定了项目中所使用的依赖
*可以确定每个包所使用的版本
*项目的构建可重复,在多人协作中更加方便
创建package.json文件时,可以通过手动创建或者使用命令npm init进行创建,在package.json文件中必须包涵有"name","version"两个字段
这样的话,我们就可以进行包依赖的管理了,即可已通过手动在package.json中添加包的版本和名称,也可以使用命令行进行添加,在这里手动添加的就不说了,如果要添加到devDependencies,可以通过npm install 的--save-dev,如果要安装到dependencies,则可以使用-save命令
如下面代码:
npm i lodash --save-devnpm i lodash --save安装之后的结果如下所示:
"devDependencies": { "babel-plugin-transform-object-rest-spread": "^6.23.0", "babel-preset-es2015": "^6.24.1", "lodash": "^4.17.4", "react": "^15.6.1" }, "dependencies": { "lodash": "^4.17.4" }
这样,当别人也需要使用这个项目的时候,就可以简单执行npm install 命令进行对所需的依赖进行下载安装
3. 包与模块的发布
如果要想将包上传到npm服务器,来供其他人下载使用,我们只需进行简单的操作即可,需要在项目中创建一个符合CommonJS文件规范的文件就可以,然后在npm官网进行注册帐号,通过命令 npm publish命令上传到注册的帐号即可
应该注意的是,当我们使用淘宝进行的时候,可能上传时会出现问题,所以将淘宝镜像删除之后在操作,因为npm会将数据写入到.npmrc里边,使用淘宝镜像时会出现问题.
具体操作如下面链接所示:npm包的发布
- node的包管理器----npm的使用
- 详解Node.js包的工程目录与NPM包管理器的使用_node.js
- node npm包管理器
- Node.js NPM包管理器
- Node.js NPM 包管理器
- npm --- Node.js包管理器
- node.js node包管理器--npm
- 《Node.js简记》包管理器npm的安装、加速和常用指令
- node包管理器npm 学习笔记(5)
- 使用npm和node开发命令行工具并使用npm管理你的包
- Node.js的包管理工具npm学习
- node的包管理工具:yarn和npm
- yarn - 一个可能取代npm的新型包管理器[Facebook出品,附带中文使用教程]
- ASP.NET Core 静态文件及JS包管理器(npm, Bower)的使用
- npm、spm、bower 这三个包管理器的异同
- npm、spm、bower 这三个包管理器的比较
- npm,spm,bower 这三个包管理器的比较
- 使用Yarn代替npm包管理器
- [BZOJ1022][SHOI2008]小约翰的游戏John-反NIM游戏
- 基数排序
- Linux学习总结
- 时间复杂度
- 终点即起点
- node的包管理器----npm的使用
- 威尔逊定理:素数的充要条件
- 网络编程中的IO复用
- 欧拉定理 和 欧拉函数
- HBase架构
- C++11 Future
- FZOJ 2233
- 2017 Multi-University Training Contest
- AIDL的使用情况和实例介绍