2016-04-24 13 views
1

(私はActionscript開発ついにJavaScriptに移行し、TypeScriptAngularJS 2を勉強していています。この質問は、ナイーブ/あまりにも愚かであれば、私に教えてください、私はそれを削除します)開発環境(重複をnode_modules)

を設定します

私はAngular 2 tutorialsを実行していますが、すべて正常ですが、 "node_modules"や "typings"ディレクトリのように重複しないで開発環境を設定する方法については不思議です。私はチュートリアル自体が完全でありたいので、複製があることを理解しています。私もそれを得る、例えば、下の行はプロジェクトフォルダに関連する参照を使用しているので、他の場所を指すことができます。

ノードモジュールの重複を避けるための「ベストプラクティス」はありますか?私は "node_modules"ディレクトリが145メガバイトだから頼む。各プロジェクトで複製さ

import {Component} from 'angular2/core'; 

enter image description here

+1

あなたはどのような重複について話していますか? – charlietfl

+1

すべてのプロジェクトにはyesが必要 – charlietfl

+0

プロジェクトごとに 'npm install'を実行するか、あなたのためにインストールするyoemanのようなものを使ってシードアプリケーションを使用します – charlietfl

答えて

2

node_modules設計によるものです - あなたのプロジェクトが自給自足になるようpackage.jsonファイルと依存関係の対応するフォルダを持つことのアイデアがある/単離し、

つまり、を使用してNPMモジュールをグローバルにインストールすることができますコマンドですが、ではないはずです。旧バージョンのAngular 2を使用しているプロジェクトがあり、最新の機能を使用して2番目のプロジェクトを開始するとします。グローバルAngularインストールを使用している場合、これは不可能です。バージョンを更新すると、それを使用しているすべてのプロジェクトで更新されます(古いアプリをひどく壊す可能性があります)。プロジェクトごとに別々のインストールがある場合、バージョンは問題を起こさずに異なる場合があります。

これはプロジェクトをバージョン管理するときにも便利です - アプリケーション全体がグローバルにインストールされたモジュールに依存している場合、あなた(または寄稿者)が別のマシンで作業したい場合、依存関係をpackage.jsonに、node_modulesをレポから除外してください - npm installを実行するだけで、NPMはすべての関連モジュールをインストールします彼らのために。

node_modulesのサイズは過度に大きくなることがありますが、私は彼らがある時点でこれを最適化してくれることを願っていますが、これは別の利点を放棄するのが良い理由だとは思いません!