Windows下nodejs 模块配置 全局模式与本地模式的区别

时间:2021-08-14 19:30:34

第1步:下载、安装文件 (nodejs的官网http://www.nodejs.org/download/ )

第2步:安装相关模块环境

  打开C:\Program Files\nodejs 目录你会发现里面自带了npm这个nodejs插件的管理工具,直接用Npm安装相关需要的相关模块即可

(其他有些系统可能需要单独安装NPM下载地址 https://github.com/isaacs/npm,也可直接用Git工具下载 git clone --recursive git://github.com/isaacs/npm.git下载完成后,

命令行首先定位到npm包所在目录,

  键入 node cli.js install npm -gf 进行安装。)

  进入node.js command prompt 命令窗口

  键入 cd C:\Program Files\nodejs  即可进入nodejs 安装目录 C:\Program Files\nodejs

开始安装相关模块环境

node模块的安装分为全局模式和本地模式。

一般情况下会以本地模式运行:node包会被安装到你的应用代码本地node_modules目录下。

在全局模式下,node包会被安装到node的默认安装目录下的node_modules下。

本地模式: 键入命令:npm install express 默认安装express的最新版本。

       若在后面加版本号可安装指定版本,如npm install express@3.0.6 回车开始安装express,

       安装完成后会在当前目录下的node_modules文件夹下多出express相关的两个文件夹express和.bin。

全局模式下: 键入命令:npm install express -g  ,安装完成命令行会提示 npm info ok。

    参数-g的含义是代表安装到全局环境里面。如果沒有-g会安装到当前node_modules目录下(如无则新建node_modules文件夹)。

    不建议初学者使用这种将包安装到全局环境中的做法,因为在js实例代码中,直接通过require()的方式是没有办法调用全局安装包的,会报错 throw err;Error: Cannot find module 'express' ,

    此时可以将node_modules整个文件夹复制一份到你的项目工程下。

    全局的安装是供命令行使用的,使用全局方式安装后,用户就可以在命令行中直接运行该组件包支持的命令,

    优点:可以提高程序的复用度,避免同样的内容存在多份副本;缺点:难以处理不同的版本依赖。

    这里的require()是node.js内置函数,用来引入其他模块以备代码中调用模块的函数和变量,默认下node.js会在NODE_PATH和目前js所在项目目录下的node_modules文件夹下去寻找模块。

    因此,如果是全局安装,不复制系统安装node_modules文件夹到项目node_modules文件夹下,

    还可以选择将环境变量的NODE_PATH设置为 C:\Program Files\nodejs,设置完成后再去项目目录运行命令 node app.js 就不会报错了。

    express.js继承自connect模块,所以若你的node_modules文件夹下没有connect模块也是不能运行的。

补充:npm常用命令

(1)npm install moduleNames

  安装Node模块

  注意事项:如果在使用模块的时候不知道其名字,可以通过 http://search.npmjs.org 网站按照索引值找到想要的模块。

  npm也提供了查询的功能 npm search indexName

  安装完毕后会产生一个node_modules 目录,其目录下就是安装的各个node模块。

  node的安装分为全局模式和本地模式。

  全局安装命令为 npm install -g moduleName

  或者使用npm set global=true来设定安装模式,npm get global 可以查看当前使用的安装模式。

  npm install <name> --save 安装的同时,将信息写入 package.json 中项目路径中,

  如果有package.json文件时,直接使用 npm install 方法就可以根据dependencies配置安装所有的依赖包,

  这样代码提交到github时,就不用提交node_modules这个文件夹了。

(2)npm view moduleNames

    查看node模块的package.json文件夹

    注意事项:如果想要查看package.json文件夹下某个标签的内容,使用 npm view moduleName labelName

(3)npm list

    查看当前目录下已安装的node包。同命令 npm ll/npm ls/npm la

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

(4)npm help

    查看帮助命令。如果要单独查看install命令的帮助,可以使用的npm help install

(5)npm view moudleName dependencies

    查看包的依赖关系

(6)npm view moduleName repository.url

    查看包的源文件地址

(7)npm view moduleName engines

    查看包所依赖的Node的版本

(8)npm help folders

    查看npm使用的所有文件夹

(9)npm rebuild moduleName

    用于更改包内容后进行重建

(10)npm outdated

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

(11)npm update moduleName

    更新node模块

(12)$ npm uninstall moudleName

    卸载node模块

(13)一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。访问npm的json文件夹的方法如下:

    npm help json

    此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打开。

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

    npm search packageName

(15)很多时候我们在使用一个npm包的时候经常会忘记了require其相互依赖的模块,我们可以借助如如下命令来查看此模块相互依赖的包都有哪些

(16)npm init

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

(17)npm rm <name>

    移除,卸载一个模块。有以下几种命令形式:

    npm rm <name>
    npm r <name>
    npm uninstall <name>
    npm un <name>

(18)npm root

  查看当前工程的包的安装路径,

  npm root -g 是查看全局的包的安装路径

(19)npm docs <packageName>

   尝试当前包对应的文档URL,并使用浏览器打开该文档。

(20)npm config ?

  获取配置文件信息,如环境变量,npmrc文件,package.json

更多命令请参看官方文档https://npmjs.org/doc/