Node.js的NPM使用教程

简介:

1. 理论部分

1.1 Node.js简介

- Node.js是运行在服务端的JavaScript

- Node.js是基于Chrome JavaScript运行时建立的一个平台

- Node.js是事件驱动I/O服务端JavaScript环境,基于Google的V8引擎

注:V8引擎执行Javascript的速度非常快,性能非常好

1.2 npm的概念

NPM是JavaScript开发人员可以轻松共享和重用代码,并且可以更轻松更新你所共享的代码。

1.3 npm包的分类

1.3.1 全局安装与全局npm包

- 通过“npm install -g <package_name>”命令生成

- 在任一目录下通过require函数传递npm包的绝对路径引用

- 无法通过npm包名称直接引用

1.3.2 本地安装与本地npm包

- 项目文件夹内通过“npm install <package_name>”命令生成

- 项目文件夹内可直接通过require函数传递本地npm名称引用

- 本地安装的项目文件夹支持自定义(如,/var/www/project1)

2 使用方法

2.1 配置Node.js环境

2.1.1 配置Node.js的源

1
yum  install  -y http: //rpm .nodesource.com /pub_8 .x /el/7/x86_64/nodesource-release-el7-1 .noarch.rpm

2.1.2 安装Node.js

1
yum  install  -y nodejs-8.1.3

2.1.3 校验安装

2.1.3.1 校验Node.js

1
node - v

显示如下:

1
v8.1.3

2.1.3.2 校验npm

1
npm - v

显示如下:

1
5.0.3

2.1.4 创建npm管理用户

1
2
useradd  npm
su  - npm

注:如无特殊说明第2章节往下代码都使用npm用户身份执行,而非root

2.1.5 配置全局npm目录

2.1.3.1 查找npm默认路径

1
npm config get prefix

显示如下:

1
/usr

2.1.3.2  新建npm全局目录

1
mkdir  ~/.npm-global

2.1.3.3  新建npm全局目录

1
npm config  set  prefix  '~/.npm-global'

2.1.3.4  配置npm环境变量

1
2
echo  'export PATH=~/.npm-global/bin:$PATH'  >> ~/.bash_profile
source   ~/.bash_profile

2.1.3.5  测试配置

1
npm  install  -g jshint

2.2 Node.js软件包的配置

2.2.1 查看已安装的包

2.2.1.1 本地包操作1

1
npm  ls

2.2.1.2 本地包操作2

1
npm  ls  --depth 0

2.2.1.3 全局包操作1

1
npm  ls  -g

2.2.1.2 全局包操作2

1
npm  ls  -g --depth 0

2.2.2 安装软件包

2.2.2.1 本地包操作

1
npm  install  <package_name>

2.2.2.2 全局包操作

1
npm  install   -g <package_name>

2.2.3 安装并保存依赖关系

2.2.3.1 本地包操作

1
npm  install  <package_name> --save

注:存在“package-lock.json”文件中

2.2.3.2 全局包操作

1
npm  install  -g <package_name> --save

注:存在“package-lock.json”文件中

2.2.5 安装并保存开发依赖关系

2.2.5.1 本地包操作

1
npm  install  <package_name> --save-dev

注:存在“package-lock.json”文件中

2.2.5.2 本地包操作

1
npm  install  -g <package_name> --save-dev

注:存在“package-lock.json”文件中

2.2.6 查看废弃的包

2.2.6.1 本地包操作

1
npm outdated

2.2.6.2 全局包操作

1
npm outdated -g --depth=0

2.2.7 更新的软件包

2.2.7.1 本地包操作

1
npm update <package_name>

2.2.7.2 全局包操作

1
npm update -g <package_name>

2.2.8 卸载软件包

2.2.8.1 本地包操作

1
npm uninstall <package_name>

2.2.8.2 全局包操作

1
npm uninstall -g <package_name>

2.2.9 卸载软件包并保存依赖关系

2.2.7.1 本地包操作

1
npm update --save <package_name>

2.2.7.2 全局包操作

1
npm update -g --save <package_name>

2.3 使用package.json

2.3.1 package.json的作用

- 声明项目所需的依赖包

- 通过语义版本控制规则声明项目所需包的版本

- 是项目更冗余重复构建和共享

2.3.2 package.json的书写要求

- name

 -- 全部小写

-- 单词间不允许使用空格

-- 可使用破折号与下划线

- version

 -- 格式“x.x.x”

-- 遵守semver规范

范例如下:

1
2
3
4
{
   “name”:“my-awesome-package”,
   “version”:“1.0.0”
}

2.3.3 创建默认的package.json文件

1
npm init -y

验证创建

1
cat  /home/npm/package .json

 显示如下:

1
2
3
4
5
6
7
8
9
10
11
12
{
   "name" "npm" ,
   "version" "1.0.0" ,
   "description" "" ,
   "main" "index.js" ,
   "scripts" : {
     "test" "echo \"Error: no test specified\" && exit 1"
   },
   "keywords" : [],
   "author" "" ,
   "license" "ISC"
}

=====================================

npm参考:

----------

https://www.npmjs.com/package/cnpm

https://npm.taobao.org/

https://cnpmjs.org/


nodejs参考:

------------

http://www.runoob.com/nodejs/nodejs-mysql.html










本文转自 tanzhenchao 51CTO博客,原文链接:http://blog.51cto.com/cmdschool/1950640,如需转载请自行联系原作者
目录
相关文章
|
3天前
|
JavaScript
npm install没问题,但npm run dev的时候报Node Sass version 6.0.1 is incompatible with ^4.0.0 ^5.0.0
npm install没问题,但npm run dev的时候报Node Sass version 6.0.1 is incompatible with ^4.0.0 ^5.0.0
|
3天前
|
JavaScript 前端开发 网络安全
【网络安全 | 信息收集】JS文件信息收集工具LinkFinder安装使用教程
【网络安全 | 信息收集】JS文件信息收集工具LinkFinder安装使用教程
16 4
|
3天前
|
资源调度 JavaScript Linux
nvm, node.js, npm, yarn 安装配置
nvm, node.js, npm, yarn 安装配置
35 1
|
3天前
|
Web App开发 JavaScript 前端开发
《手把手教你》系列技巧篇(三十九)-java+ selenium自动化测试-JavaScript的调用执行-上篇(详解教程)
【5月更文挑战第3天】本文介绍了如何在Web自动化测试中使用JavaScript执行器(JavascriptExecutor)来完成Selenium API无法处理的任务。首先,需要将WebDriver转换为JavascriptExecutor对象,然后通过executeScript方法执行JavaScript代码。示例用法包括设置JS代码字符串并调用executeScript。文章提供了两个实战场景:一是当时间插件限制输入时,用JS去除元素的readonly属性;二是处理需滚动才能显示的元素,利用JS滚动页面。还给出了一个滚动到底部的代码示例,并提供了详细步骤和解释。
32 10
|
2天前
|
JavaScript Unix Shell
#! /usr/bin/env node 命令与 npm link 建立项目间软连接(一)
#! /usr/bin/env node 命令与 npm link 建立项目间软连接(一)
8 0
|
3天前
node node-sass sass-loader版本对应问题,对于npm编译大家经常遇到这个问题
node node-sass sass-loader版本对应问题,对于npm编译大家经常遇到这个问题
|
3天前
|
存储 JavaScript 前端开发
Javascript教程
Javascript教程
9 0
|
3天前
|
JavaScript 前端开发 Java
《手把手教你》系列技巧篇(四十)-java+ selenium自动化测试-JavaScript的调用执行-下篇(详解教程)
【5月更文挑战第4天】本文介绍了如何使用JavaScriptExecutor在自动化测试中实现元素高亮显示。通过创建并执行JS代码,可以改变元素的样式,例如设置背景色和边框,以突出显示被操作的元素。文中提供了一个Java示例,展示了如何在Selenium中使用此方法,并附有代码截图和运行效果展示。该技术有助于跟踪和理解测试过程中的元素交互。
12 0
|
3天前
|
缓存 JavaScript 前端开发
深入剖析NPM: Node包管理器的介绍和使用指南
深入剖析NPM: Node包管理器的介绍和使用指南
12 0
|
3天前
|
JavaScript 前端开发 开发者
Node.js的包管理和npm工具深度解析
【4月更文挑战第30天】本文深入解析Node.js的包管理和npm工具。包管理促进代码复用和社区协作,包包含元数据描述文件`package.json`和入口文件。npm提供搜索、安装、发布等功能,通过命令行进行操作,如`install`、`search`、`uninstall`。npm支持版本控制、全局安装、脚本定义及私有仓库。理解和熟练运用npm能提升Node.js开发效率。

推荐镜像

更多