一、Node和Npm关系
  • node.js是javascript的一种运行环境,是对Google V8引擎进行的封装。是一个服务器端的javascript的解释器。

包含关系

  • node.js中含有npm,比如说你安装好nodejs,你打开cmd输入npm -v会发现npm的版本号,说明npm已经安装好。

在这里插入图片描述
总结:
其实npm是node.js的包管理器(package manager)。我们在Node.js上开发时,会用到很多别人已经写好的javascript代码,
如果每当我们需要别人的代码时,都根据名字搜索一下,下载源码,解压,再使用,会非常麻烦。于是就出现了包管理器npm。
大家把自己写好的源码上传到npm官网上,如果要用某个或某些个,直接通过npm安装就可以了,不用管那个源码在哪里。
并且如果我们要使用模块A,而模块A又依赖模块B,模块B又依赖模块C和D,此时npm会根据依赖关系,
把所有依赖的包都下载下来并且管理起来。试想如果这些工作全靠我们自己去完成会多么麻烦!

包目录结构关系:
D:\software\Node\node_modules\npm\node_modules
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
npm管理的js包如下:
在这里插入图片描述

二、常用操作指令

说明:以下命令中module_name或者module name均为js包名,根据实际安装需要更改。
1.npm install <module name>安装组件和模块
安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。

node的安装分为全局模式和本地模式。
一般情况下会以本地模式运行,包会被安装到和你的应用程序代码的本地node_modules目录下。
在全局模式下,Node包会被安装到Node的安装目录下的node_modules下。

全局安装命令为npm install <module Name> -g
或者使用npm set global=true来设定安装模式,npm get global可以查看当前使用的安装模式。

示例:
npm install express (express指需要安装的包名)
默认会安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本,如npm install express@3.0.6

npm install <name> -g(name指需要安装的包名)
将包安装到全局环境中

但是代码中,直接通过require()的方式是没有办法调用全局安装的包的。全局的安装是供命令行使用的,就好像全局安装了vmarket后,就可以在命令行中直接运行vm命令

npm install <name> --save
安装的同时,将信息写入package.json中项目路径中
如果有package.json文件时,直接使用npm install方法就可以根据dependencies配置安装所有的依赖包,这样代码提交到github时,就不用提交node_modules这个文件夹了。

2、npm view <moudle name>:查看node模块的package.json文件夹
注意事项:如果想要查看package.json文件夹下某个标签的内容,可以使用npm view module_Name label_Name

3、npm list:查看当前目录下已安装的node包
注意事项:Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容。$ npm list parseable=true可以目录的形式来展现当前安装的所有node包

4、npm help:查看帮助命令

5、npm view moudle_name dependencies:查看包的依赖关系

6、npm view module_name repository.url:查看包的源文件地址

7、npm view module_name engines:查看包所依赖的Node的版本

8、npm help folders:查看npm使用的所有文件夹

9、npm rebuild module_name:用于更改包内容后进行重建

10、npm outdated:检查包是否已经过时,此命令会列出所有已经过时的包,可以及时进行包的更新

11、npm update module_name:更新node模块
若项目中已经存在node_module文件,直接使用npm update更新

12、npm uninstall moudle_name:卸载node模块

13、一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。访问npm的json文件夹的方法如下:
npm help json
此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打开。

14、发布一个npm包的时候,需要检验某个包名是否已存在
npm search packageName

15、npm init:会引导你创建一个package.json文件,包括名称、版本、作者这些信息等

16、npm root:查看当前包的安装路径
npm root -g:查看全局的包的安装路径

17、npm -v:查看npm安装的版本

三、常见错误及解决

1.npm run dev时报错‘vue-cli-service’不是内部或外部命令,也不是可运行的程序
解决:删除node_modules包重新执行npm install,仍有问题往下看。
2.npm install时报错undefined ls-remote -h -t ssh://git@github.com/sohee-lee7/Squired.git
在这里插入图片描述
解决:git需要设置系统环境变量

  • 系统环境变量->Path->添加git的bin目录

在这里插入图片描述
3.Node需要配置系统环境变量,同上。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐