美文网首页我爱编程
^。^_________初探Node.js 安装篇_______

^。^_________初探Node.js 安装篇_______

作者: Junting | 来源:发表于2016-08-10 13:07 被阅读105次

    Node.js,What is?

    Node.js 就是运行在服务器端的Javascript。
    Node.js 是基于 Chrome JavaScript 运行时建立的一个平台。
    Node.js 是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

    安装 Node.js

    快速搭建 Node.js 开发环境以及加速 npm

    解决以下问题:

    • 如何快速搭建 node 开发环境
    • npm 超慢
    • github 无法打开的问题

    快速搭建Node.js开发环境

    如果你想长期做 node 开发, 或者想快速更新 node 版本, 或者想快速切换 node 版本,那么在非 Windows(如 osx, linux) 环境下, 请使用 nvm 来安装你的 node 开发环境, 保持系统的干净.
    如果你使用 Windows 做开发, 那么你可以使用 nvmw 来替代 nvm

    osx, linux 环境

    这里我使用的是git ,从github 仓库下载到本地
    直接从 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

         $ nvm
    
    Node Version Manager
    
    Usage:
        nvm help                    Show this message
        nvm --version               Print out the latest released version of nvm
        nvm install [-s] <version>  Download and install a <version>, [-s] from source
        nvm uninstall <version>     Uninstall a version
        nvm use <version>           Modify PATH to use <version>
        nvm run <version> [<args>]  Run <version> with <args> as arguments
        nvm current                 Display currently activated version
        nvm ls                      List installed versions
        nvm ls <version>            List versions matching a given description
        nvm ls-remote               List remote versions available for install
        nvm deactivate              Undo effects of NVM on current shell
        nvm alias [<pattern>]       Show all aliases beginning with <pattern>
        nvm alias <name> <version>  Set an alias named <name> pointing to <version>
        nvm unalias <name>          Deletes the alias named <name>
        nvm copy-packages <version> Install global NPM packages contained in <version> to current version
    
    Example:
        nvm install v0.10.24        Install a specific version number
        nvm use 0.10                Use the latest available 0.10.x release
        nvm run 0.10.24 myApp.js    Run myApp.js using node v0.10.24
        nvm alias default 0.10.24   Set default node version on a shell
    
    Note:
        to remove, delete or uninstall nvm - just remove ~/.nvm, ~/.npm and ~/.bower folders
    

    通过nvm 安装任意版本的node

    nvm 默认是从 http://nodejs.org/dist/ 下载的, 国外服务器, 必然很慢,好在 nvm 以及支持从镜像服务器下载包, 于是我们可以方便地从七牛的 node dist 镜像下载:

       $ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 4
    

    于是你就会看到一段非常快速进度条:

     ######################################################################## 100.0%
    

    Now using node v4.4.7

    然后你可以继续非常方便地安装各个版本的 node 了, 你可以查看一下你当前已经安装的版本:

      $ nvm ls 
              nvm 
            v0.8.26 
            v0.10.26 
            v0.11.11
      -> v4.4.7
    

    使用 cnpm 加速 npm

    同理 nvm , npm 默认是从国外的源获取和下载包信息, 不慢才奇怪.可以通过简单的---registry
    参数, 使用国内的镜像 https://registry.npm.taobao.org :

       $ npm --registry=https://registry.npm.taobao.org install koa
    

    于是屏幕又哗啦哗啦地一大片输出:

           $ npm --registry=https://registry.npm.taobao.org install koa
      npm http GET https://registry.npm.taobao.org/koa
      npm http 200 https://registry.npm.taobao.org/koa
      ...
      npm http 200 https://registry.npm.taobao.org/negotiator
      npm http 200 https://registry.npm.taobao.org/keygrip
      koa[@0](/user/0).5.2 node_modules/koa
      ├── koa-compose[@2](/user/2).2.0
      ├── statuses[@1](/user/1).0.2
      ├── finished[@1](/user/1).1.1
      ├── escape-html[@1](/user/1).0.1
      ├── only[@0](/user/0).0.2
      ├── debug[@0](/user/0).8.0
      ├── fresh[@0](/user/0).2.2
      ├── type-is[@1](/user/1).0.1
      ├── delegates[@0](/user/0).0.3
      ├── mime[@1](/user/1).2.11
      ├── co[@3](/user/3).0.5
      ├── accepts[@1](/user/1).0.1 (negotiator[@0](/user/0).4.2)
      └── cookies[@0](/user/0).4.0 (keygrip[@1](/user/1).0.0)
    

    但是毕竟镜像跟官方的 npm 源还是会有一个同步时间差异, 目前 cnpm 的默认同步时间间隔是 15 分钟.如果你是模块发布者, 或者你想马上同步一个模块, 那么推荐你安装 cnpm cli:

     $ npm --registry=https://registry.npm.taobao.org install cnpm -g
    

    通过 cnpm 命令行, 你可以快速同步任意模块:

     $ cnpm sync koa connect mocha
    

    github 好慢

    好了, 看到这里大家应该对 node 和 npm 已经没有速度慢的问题了.

    github 慢, 或者说是它的资源 host 被堵而已, 大家可以通过简单的 hosts 映射解决:

      185.31.16.184 github.global.ssl.fastly.net

    相关文章

      网友评论

        本文标题:^。^_________初探Node.js 安装篇_______

        本文链接:https://www.haomeiwen.com/subject/phxhsttx.html