开发nodejs前需要知道的一些东西
来源:互联网 发布:免root数据恢复app 编辑:程序博客网 时间:2024/04/29 02:32
@#$SDFG$DEW#E@!EXWT#ߥ®™∞¡¥
- github无法访问下不了
- node.js环境搭建好慢
- npm慢死
- bower慢
- BLABLABLA……
node.js环境快速搭建管理
直接从 github clone nvm 到本地, 这里假设大家都使用 ~/git 目录存放 git 项目:
$ cd ~/git$ git clone https://github.com/creationix/nvm.git
配置终端启动时自动执行 source ~/git/nvm/nvm.sh
,
在 ~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc 文件添加以下命令:
$ source ~/git/nvm/nvm.sh
nvm 默认是从 http://nodejs.org/dist/ 下载的, 国外服务器, 必然很慢,
好在 nvm 以及支持从镜像服务器下载包, 于是我们可以方便地从七牛的 node dist 镜像下载:
$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/dist nvm install 0.11.11
于是你就会看到一段非常快速进度条:
######################################################################## 100.0%Now using node v0.11.11
如果你不想每次都输入环境变量 NVM_NODEJS_ORG_MIRROR, 那么我建议你加入到 .bashrc
文件中:
# nvmexport NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/distsource ~/git/nvm/nvm.sh
nvm 的具体使用我在这里就不多说了,其他人讲的挺多了,官网也很详尽,或者直接nvm回车查看帮助
使用镜像或者cnpm加速npm
同理 nvm , npm 默认是从国外的源获取和下载包信息, 不慢才奇怪.
可以通过简单的 ---registry
参数, 使用国内的镜像https://registry.npm.taobao.org :
$ npm --registry=https://registry.npm.taobao.org install nrm
当然, 每次都要输入那么长串的 registry url 的话, 实在太麻烦, 可以使用 nrm 这个模块来切换镜像:
$ nrm ls// 对比各个镜像的访问速度$ nrm test// 使用淘宝的镜像$ nrm use taobao
但是毕竟镜像跟官方的 npm 源还是会有一个同步时间差异, 目前 cnpm 的默认同步时间间隔是 15 分钟.
如果你是模块发布者, 或者你想马上同步一个模块, 那么推荐你安装 cnpm cli:
npm install cnpm -g
通过 cnpm 命令行, 你可以快速同步任意模块:
$ cnpm sync koa connect mocha
呃, 我就是不想安装 cnpm cli 怎么办? 哈哈, 早就想到你会这么懒了, 于是我们还有一个 web 页面:
例如我想马上同步 koa, 直接打开浏览器:https://npm.taobao.org/sync/koa
或者你是命令行控, 通过 open 命令打开:
$ open https://npm.taobao.org/sync/koa
如果你安装的模块依赖了 C++ 模块, 需要编译, 肯定会通过 node-gyp 来编译,
node-gyp 在第一次编译的时候, 需要依赖 node 源代码, 于是又会去 node dist 下载,
于是大家又会吐槽, 怎么 npm 安装这么慢…
好吧, 于是又要提到 —disturl 参数, 通过七牛的镜像来下载:
$ npm --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/dist install microtime
再次要提到 cnpm cli, 它已经默认将 —registry 和 —disturl 都配置好了, 用了就知道了.
GitHub好慢啊
好了, 看到这里大家应该对 node 和 npm 已经没有速度慢的问题了.
github 慢, 或者说是它的资源 host 被堵而已, 大家可以通过简单的 hosts 映射解决:
185.31.16.184 github.global.ssl.fastly.net
国内taobao镜像列表
- 开源镜像: http://npm.taobao.org/mirrors
- iojs.org/dist 镜像: http://npm.taobao.org/mirrors/iojs
- nodejs.org/dist 镜像: http://npm.taobao.org/mirrors/node
- phantomjs 镜像: http://npm.taobao.org/mirrors/phantomjs
- ChromeDriver 镜像: http://npm.taobao.org/mirrors/chromedriver
- Node.js 文档镜像:http://npm.taobao.org/mirrors/node/latest/docs/api/index.html
- io.js 文档镜像:http://npm.taobao.org/mirrors/iojs/latest/doc/api/index.html
bower添加代理
修改 .bowerrc 文件(如无则新增):
{ "proxy": "http://hx.gy:1080", "https-proxy": "http://hx.gy:1080"}
代理
你懂的能访问就好,不懂多搜就懂
- 开发nodejs前需要知道的一些东西
- 单例模式的一些需要知道的东西
- java关于==需要知道的一些东西
- FMDB (v2.5)一些需要知道的东西
- 开发者和创业者需要知道的一些东西
- 第二章:开始开发mod前你需要知道的一些事情
- unity3d开发需要知道的一些常量
- IOS开发-需要知道的一些事情
- unity3d开发需要知道的一些常量
- Android 开发需要知道的一些基本概念
- 在面试一个游戏编程职位前,你需要知道的东西
- 在面试一个游戏编程职位前,你需要知道的东西
- 在面试一个游戏编程职位前,你需要知道的东西
- (转)在面试一个游戏编程职位前,你需要知道的东西
- 在面试一个游戏编程职位前,你需要知道的东西
- 在面试一个游戏编程职位前,你需要知道的东西
- 在面试一个游戏编程职位前,你需要知道的东西
- linux-CentOS 7中rails for ruby 需要安装的一些东西(Curl、Nodejs)
- 51Nod-1272-最大距离
- HDU 2509 Be the Winner
- RxJava操作符(3)-过滤
- RestTemplate.postForObject - Error: 400 Bad Request
- Wireshark捕捉与显示过滤器语法详解
- 开发nodejs前需要知道的一些东西
- C/C++ base64 编解码
- rxJava 相关资源目录整合-逐渐更新
- Spring Boot WebSocket整合及nginx配置
- ExtJS4 树节点checkbox选中问题
- 邮件的发送
- HTTP/1.1协议规范(中文归纳版)
- 【HDU】-5480-Conturbatio(思维,好)
- CodeForces 672A Summer Camp(数字游戏,枚举)