零,

npm是nodeJS的包管理器,下载nodeJS后会自动安装好npm.

一,windows下安装 nodeJS并配置(以及angular安装相关问题)

1, 下载安装 https://nodejs.org/en/download/    安装路径为 D:\nodejs

2,将 D:\nodejs 配置到环境变量Path中。然后打开cmd输入 node -v 和 npm -v 检查安装是否成功.

3,默认的安装下,npm的本地仓库建立在了C盘:C:\Users\admin\AppData\Roaming,现在将其移动至 nodeJS的安装目录:D:\nodejs

4.1,运行如下命令可以将仓库地址移至D盘

  • npm config set prefix "D:\nodejs\node_global"   //这里配置的全局模块存储位置
  • npm config set cache "D:\nodejs\node_cache"   //这里配置cache路径

4.2,这个步骤也可以通过如下方式:打开 D:\nodejs\node_modules\npm\npmrc文件,配置如下路径:

  • prefix=D:\nodejs\node_global  //这里配置的全局模块存储位置
  • cache=D:\nodejs\node_cache //这里配置cache路径

注意,这个是直接在文件里添加的,如果使用4.1中的命令:npm config set prefix "D:\nodejs\node_global" , npm config set cache "D:\nodejs\node_cache",则配置信息并不是写到上面那个npmrc中,而是写入到 C盘下用户路径下的npmrc中去了。可以通过npm config ls 来查看配置文件信息。如果此文件里的内容格式不对,将导致npm命令无任何响应...npm -v等等。

5, 输入npm list -global 查看npm的本地仓库的位置,发现已经移至D盘

6,输入命令:npm config set registry=http://registry.npm.taobao.org  配置镜像站,提升速度(配置后可通过npm config list查看)

7,npm install -g express 将会将express模块下载至全局仓库中 D:\nodejs\node_global\node_modules, 此时如果在node命令行中require("express")则会报错,找不到express模块。此时需要再添加一个环境变量:NODE_PATH,其值为  D:\nodejs\node_global\node_modules 【因为原来存放模块的目录 D:\nodejs\node_modules 变为了 D:\nodejs\node_global\node_modules 】,另外注意 npm install -g express-generator才是express项目的骨架生成器(脚手架).  express myExpressApp 命令会生成express项目文件夹。然后进入myExpressApp文件夹运行npm install 安装项目依赖。

7.1, 安装typescript: npm install -g typescript  ,(tsc -v命令现在还无效,需添加环境变量,下面有说明)然后在 idea Intellij 中配置typescript编译选项

8,安装angular脚手架: npm install -g @angular/cli , 然后运行ng -v查看angular版本,发现报错,此时需要将 D:\nodejs\node_global ③添加到环境变量中。因为 typescript 和 angular安装之后ng,tsc在D:\nodejs\node_global 文件夹下都有一个启动命令文件,所以将此路径加入环境变量才会启动,实际上启动的就是这里的文件。

9,安装cnpm以及@angular/cli时一直卡在 checking status 处, 自己的解决方法是:进入C盘/用户/appdata/roaming文件夹,将node_global和node_cache文件夹删除,同时将自己在D盘的npmrc中设置的node_cache和node_global 两个文件夹中的内容清空。重新打开控制台安装就好了。

10, 总结一下win7下node所有的环境变量配置:(都可以直接在系统环境变量下配置,不用管用户环境变量,假设nodejs安装在 D:\nodejs 文件夹):

  • 将【D:\nodejs】加入Path,否则node -v 和 npm -v提示不是内部命令
  • 将在npmrc中配置的全局模块路径【D:\nodejs\node_global】添加到Path, 否则安装的模块,如ng -v,tsc -v会提示不是内部命令。(注意到了一个东西:安装之后ng,tsc在D:\nodejs\node_global 文件夹下都有一个启动命令文件,所以将此路径加入环境变量才会启动,实际上启动的就是这里的文件
  • 将在npmrc中配置的全局模块路径【D:\nodejs\node_global\node_modules】添加到NODE_PATH, 否则node加载模块时(require("express"))提示找不到模块。

11,Intellij Idea(或phpstorm)配置ts文件(或js文件)运行(调试):

  首先要安装插件,如下图,然后新建一个nodejs配置,然后选择ts对应的js文件(直接选ts运行会报错),然后就可以调试ts(js)文件了。

二, ubuntu16.04  node 8.11.3安装

官网下载 https://nodejs.org/zh-cn/包,解压到某个目录,注意是xz压缩格式,用参数J

tar xvJf node-v8.11.3-linux-x64.tar.xz -C xx/

然后进入xx/bin中运行 ./node -v即可,同样 ./npm -v。

建立软连接可以使node,  npm命令全局使用:

ln -s path/to/xx/bin/node /usr/local/bin/node

ln -s path/to/xx/bin/npm /usr/local/bin/npm

三,知识点记录

※,npm config list 查看所有配置信息

※,npm list -g: 查看所有已安装的包以及其所在的目录。 npm list -g typescript@3.1.3 查看typescript的信息。

※,npm start 执行的是package.json 中的scripts.start的值。npm start 是 npm run start的简写。

※,

四,

NodeJS (npm) 学习笔记的更多相关文章

  1. NPM 学习笔记整理

    NPM 学习笔记整理 阅读 550,2017年06月04日 发布,来源:blog.ihoey.com 什么是 NPM npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ru ...

  2. nodejs入门学习笔记一——一个完整的http路由服务实现

    开始学习nodejs! 参考书籍:The Node Beginner Book ,所有问题和讨论都围绕本书. 1.学习nodejs需要具备的基础知识: js基本语法,基本上写过前端的都能满足,原生js ...

  3. npm学习笔记

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...

  4. npm 学习笔记

    一.介绍 1.是什么 npm 全称是 Node Package Manager,即 Node 包管理工具. 但是发展到后来,并不仅是适用于 node.js 的包. 所以现在看 node_modules ...

  5. 【nodejs】学习笔记

    学习链接:http://www.cnblogs.com/zhongweiv/p/nodejs_environment.html (一)简介及环境安装 Node.js是让Javascript脱离浏览器运 ...

  6. nodejs入门学习笔记二——解决阻塞问题

    在最开始,我们要弄清楚node会什么会存在阻塞? node是这么标榜自己的:“在node中除了代码,所有一切都是并行执行的!” 意思是,Node.js可以在不新增额外线程的情况下,依然可以对任务进行并 ...

  7. Nodejs学习笔记(三)——一张图看懂Nodejs建站

    前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试 ...

  8. Nodejs学习笔记(二)——Eclipse中运行调试Nodejs

    前篇<Nodejs学习笔记(一)——初识Nodejs>主要介绍了在搭建node环境过程中遇到的小问题以及搭建Eclipse开发Node环境的前提步骤.本篇主要介绍如何在Eclipse中运行 ...

  9. Nodejs学习笔记(六)--- Node.js + Express 构建网站预备知识

    目录 前言 新建express项目并自定义路由规则 如何提取页面中的公共部分? 如何提交表单并接收参数? GET 方式 POST 方式 如何字符串加密? 如何使用session? 如何使用cookie ...

随机推荐

  1. card布局解决复杂操作的布局问题

    一直不是很待见直接使用card布局,直到对于一些稍微复杂点的业务, 通过border布局和弹窗体的方式解决特别费劲之后,才想起了card布局, 发现card布局真是一个很好的解决办法. 那个使用起来很 ...

  2. CSRF总结

    一.CSRF概述 CSRF跨站请求伪造,2007年被列为互联网20大安全隐患之一. 什么是跨站请求伪造?CSRF或XSRF 挟制用户在当前已经登录的web应用程序上执行非本意的操作的攻击方法.攻击者盗 ...

  3. map基本方法

    添加功能: V put(K key, V value)  添加和修改 ,添加时返回null,修改时返回被修改的值   Map<String,String> map = new HashMa ...

  4. 微信小程序如何接入?

    1.线下扫码:小程序最基础的获取方式,是二维码.大家可以打开扫一扫,通过微信扫描线下二维码的方式进入小程序.这也是官方宣传中,最普遍的实用场景. 如何生成小程序导入码? 2.微信搜索 3.公众号关联 ...

  5. fail-fast和fail-safe的区别

    fail-fast(快速失败):多线程情况下,一个线程通过迭代器读取集合中的值时,另一个线程修改了集合,则会抛出ConcurrentModificationException异常: 集合中通过modC ...

  6. MyCP -tx -xt 功能的Java实现

    MyCP -tx -xt 功能的Java实现 功能简介 java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件 java MyCP -xt ...

  7. c#: 创建桌面快捷方式

    App适配输出方式时发现问题,聊做备忘. 需要注意的是:不要直接引用Interop.IWshRuntimeLibrary.dll程序集,因为它可能是x86或x64的,倘若程序以Any CPU方式编译, ...

  8. http标码集合

    201 Created告诉客户端,请求成功,资源已经创建.新的资源的网址请看 202 Accepted告诉客户端,请求已经接受,但还没有处理,可以去Location字段查询进展. 200 Ok告诉客户 ...

  9. synchronized锁机制 之 代码块锁(转)

    synchronized同步代码块 用关键字synchronized声明方法在某些情况下是有弊端的,比如A线程调用同步方法执行一个较长时间的任务,那么B线程必须等待比较长的时间.这种情况下可以尝试使用 ...

  10. Eclipse oxygen 版本汉化教程

    Eclipse oxygen 版本汉化步骤如下: 第一步:打开Eclipse 第二步:浏览器打开网址 http://www.eclipse.org/babel/downloads.php 1.复制对应 ...