cnpmのaliasを使用します
3543 ワード
国内で直接npmを使ってモジュールをダウンロードするのはいつもとても遅くて、甚だしきに至ってはダウンロードが失敗して、宝を洗うcnpmを使ってスピードを高めることができます.
cnpmモジュールを直接使用してダウンロードする依存度に問題が発生することがあります.(cnpmダウンロードの依存ディレクトリ構造はnpmと異なると言われています.)
より良い方法は、タオバオのnpmソース、すなわちパラメータ
cnpm公式サイトは
Powershellを例にとると、
また問題が来ました.
つまり、次の文はだめです.
まず関数を定義してから
cnpmモジュールを直接使用してダウンロードする依存度に問題が発生することがあります.(cnpmダウンロードの依存ディレクトリ構造はnpmと異なると言われています.)
より良い方法は、タオバオのnpmソース、すなわちパラメータ
--registry=https://registry.npm.taobao.org
を使用することである.cnpm公式サイトは
alias
方式を提供しています.alias cnpm="npm --registry=https://registry.npm.taobao.org \
--cache=$HOME/.npm/.cache/cnpm \
--disturl=https://npm.taobao.org/dist \
--userconfig=$HOME/.cnpmrc"
# Or alias it in .bashrc or .zshrc
$ echo '
#alias for cnpm
alias cnpm="npm --registry=https://registry.npm.taobao.org \
--cache=$HOME/.npm/.cache/cnpm \
--disturl=https://npm.taobao.org/dist \
--userconfig=$HOME/.cnpmrc"' >> ~/.zshrc && source ~/.zshrc
問題はこのコマンドはwindowsをサポートしていません.別のalias方式を探すしかないです.Powershellを例にとると、
Set-Alias
コマンドを持って別名を設定し、構成ファイルに自動的に別名をロードすると記載されています.この記事を参照してPowerShellでAliasesを使用することができます.また問題が来ました.
Set-Alias
ですが、この方法はステートメントをサポートしないべきです.functionまたはprogramにaliasを設定するしかないです.つまり、次の文はだめです.
set-alias cnpm "npm --registry=https://registry.npm.taobao.org"
はset-alias cnpm npm
しか使えません.まず関数を定義してから
Set-Alias
に行ってもいいです.function Start-npmWithTaobao {
$argList = $args -Join ' '
Start-Process -FilePath 'npm' -ArgumentList "--registry=https://registry.npm.taobao.org $argList" -NoNewWindow
}
Set-Alias cnpm Start-npmWithTaobao
面倒くさいですね.nrm
モジュールは直接に各種のnpmソースを切り替えることができます.$ npm install -g nrm
$ nrm ls
* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
eu ----- http://registry.npmjs.eu/
au ----- http://registry.npmjs.org.au/
sl ----- http://npm.strongloop.com/
nj ----- https://registry.nodejitsu.com/
$ nrm help // show help
$ nrm list // show all registries
$ nrm use cnpm // switch to cnpm
$ nrm home // go to a registry home page