2016-11-16 10 views
3

私はmeanjsプロジェクトをデプロイしようとしていますが、どのように縮小するのか分かりません。concat &プロジェクトをgruntしてみましょう。私がこれまでに出て見つけた何斜め方向のプロジェクトをいかに醜くするのですか?

  1. は、依存関係のためにCONCATする必要が
  2. (他のコードが実行されません)連結-> ngAnnotate -> uglifyを実行する必要があります(そうでなければ優勝

このロジックでは、関連するサードパーティライブラリ(ノードモジュール)の単一の「uglified」バージョンを作成することができましたが、私はモジュールのために同じことをすることができません。書きました。

依存関係(grunt-concat-in-order、grunt-concat-dependencies、grunt-concat-deps)に従ってファイルを並べ替えることになっているコンカットツールを使用しようとしましたが、何も助けになりませんでした。行方不明のモジュール/宣言のエラー。

連結する必要があるjsファイルの順序を変更してみましたが、何か他のものが見つからず、サイトが部分的に(最高で)読み込まれるたびに、並べ替えを試みました。 ファイルをコンパイルしたヘッダーに表示される順序に従って並べ替えることは役に立ちません。

Angularファイルの依存関係や、それらを並べ替えるべき一般的なロジックに従って、Concrete Angularファイルがありますか?

ありがとうございました。

答えて

1

はそれを見つけました! 明らかにJSとAngularはフレキシブルで、 ';'モジュール/ディレクティブ宣言の終わりに。 私はコード全体を見て、欠落した ';'を追加しました。適切な場所で

例えば:

angular.module('core').filter('xyz', [function() { 
    ..... 
}]) 

は最後にスリープ状態に入ることができます。

*オリジナルのポスト: Angular module().factory() is not a function after concat (gulp)(最大槍に歓声)の入力のための

0

最初にチェックするのは、関数パラメータがuglification中に置き換えられ、もう解決されないため、コード内のすべてのDIパターンを実際に使用することです。

ControllerName.$inject = ['component'] 

それとも

angular.module('module') 
    .controller(['module', function (module) { /*... */}) ; 

あなたは明示的にこのようなファイルの順番(擬似コード)を指定することができているかどうかを確認、ことをやったとき:

['module1_decl_file.js','module2_decl_file.js', '*.js','**/*.js']

+0

おかげで、 することにより、ファイルが連結される順序を意味しています「明示的にファイルの順序を指定しますか」?私は、concat関数が私が書いた順序でファイルを追加すると推測しました。 – Daniel

+0

そうでしょう。私は使用しているライブラリを正確には試していませんが、gulp-concatなどは試していません。注文を確認するだけで、あなたはそれを上げずに連結しようとしましたか?ちょうどuglificationパラメーター置換エラーである可能性があります。あなたのユースケースは決してユニークではなく、人々がそれを使用する最も頻繁な方法である可能性が高いです。 –

+0

よく、 私は連結ファイル(ngannotate/uglifyバージョンなし)を含めてみましたが、それは同じです...順序が問題であることを意味します。 – Daniel

関連する問題