zoukankan      html  css  js  c++  java
  • windows 中配置 nodejs npm

    npm安装模块的方式有两种:本地安装,全局安装。

    这两者的区别在于,在用npm install xxx时加不加-g这个选项。

    本地安装的路径在win中是当前cmd的路径。比如,我一打开cmd时,路径是C:Documents and SettingsAdministrator。那如果我用npm install koa的话,结果会在这个目录下生成一个node_modules文件夹,里面是koa文件夹。很显然,很多时候,我们不会把工作路径设在c盘的那个地方。这时,如果require(‘koa’);的话就会提示找不到模块的错误。

    那怎么办呢,就是先在cmd里面切换目录到你的工作路径,然后再安装。这也是推荐的方式。

    还有一点要注意,就是安装后用require(‘koa’);时,要像普通js一样,完全显式的指定它的路径。比如我的chat_server.js是这样引用socket.io的。 require('./node_modules/socket.io/index.js')(server);,前面有个点代表当前js文件的路径。

     全局安装:这个很好理解,比如自己做的很多东西都是基于express,而且东西里面又有很多地方用到express,如果每次都像上面那样指定路径的话会很烦人。如果用全局安装的话,就可以直接用require('express');了。

    全局安装的默认路径是

    那如果我不喜欢这个路径的话,怎么办。

     比如我的node.js安装在F: odejs,新建一个lib文件夹,里面放新安装模块。

    先找到F: odejs ode_modules pm里面的npmrc这个文件,打开可以看到就只有

    prefix=${APPDATA} pm

    将其改成prefix=F: odejslib pm ode_modules pm。

    这时记得安装的时候加上-g选项。

    全局安装的方式在windows 中,必须配置 NODE_PATH=F: odejslib pm ode_modules pmnode_modules 环境变量,才能在代码作用使用require引用,否则会报错。红色部分是自动生成的文件夹,需要在NODE_PATH中添加,在是prefix并未指定。

    另外,设置完环境变量后要重新打开cmd才能让新设置的环境变量生效。

    NPM 配置镜像

    设置代理

    npm config set proxy http://server:port
    npm config set https-proxy http://server:port

    如果需要认证的话可以这样设置:

    npm config set proxy http://username:password@server:port
    npm confit set https-proxy http://username:password@server:port

    如果代理不支持https的话需要修改npm存放package的网站地址。

    npm config set registry "http://registry.npmjs.org/"

     

    删除代理

    npm config delete proxy

    使用nrm快速切换npm源

    nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换:

    • 列表项目
    • npm
    • cnpm
    • strongloop
    • enropean
    • australia
    • nodejitsu
    • taobao

    Install

    sudo npm install -g nrm
    

    如何使用?

    列出可用的源:

      ➜  ~  nrm ls
      npm ---- https://registry.npmjs.org/
      cnpm --- http://r.cnpmjs.org/
      taobao - http://registry.npm.taobao.org/
      eu ----- http://registry.npmjs.eu/
      au ----- http://registry.npmjs.org.au/
      sl ----- http://npm.strongloop.com/
      nj ----- https://registry.nodejitsu.com/
      pt ----- http://registry.npmjs.pt/

    切换:

    ➜  ~  nrm use taobao
       Registry has been set to: http://registry.npm.taobao.org/
    

    增加源:

    nrm add <registry> <url> [home]
    

    删除源:

    nrm del <registry>
    

    测试速度:

    nrm test
  • 相关阅读:
    postgresql 排序索引
    postgresql 外键约束是否自动索引,unique约束是否自动建索引,主键是否自动建索引
    nginx缓存失效--vim选择后u将所有大小转换为了小写
    linux内核参数调优
    如何让自己的网站在搜索引擎中出现
    linux 查看系统版本
    nginx 模板
    深浅拷贝2
    字典 综合逻辑
    字典 dict
  • 原文地址:https://www.cnblogs.com/yudar/p/5613784.html
Copyright © 2011-2022 走看看