問題タブ [grunt-contrib-uglify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Grunt は uglify にハングアップします
少し角度のあるスクリプトを縮小しようとしていますが、何らかの理由で uglify が無期限にハングします。JSHint は正常に実行され、タスク リストに追加すると完了しますが、uglify でハングします。
これが私のGruntfileです:
私が使用しているバージョンは次のとおりです。
私は実行grunt -v
し、jshintが終了した後、これを永久に出力します:
どのファイルを渡しても気にしないようです。そのため、ファイルを読み取る前に何らかの問題が発生しているようです。
何か案は?
angularjs - ソースマップを Grunt、usemin、uglify、rev で動作させる
Grunt を使用して、AngularJS アプリケーションを本番用に最適化しています。useminPrepare と usemin を使用して、index.html ページから concat/minify するファイルを読み取ります。エラーが発生している場所を表示できるように、ソースマップを機能させようとしています。package.json の関連バージョンは次のとおりです。
Gruntfile.js
これは、関連するタスクだけに削減されたバージョンです。
*.js.map
ファイルは で生成されていますdist/assets/js
。そして、改訂されたJSファイルはそれらをうまく参照しているようです:
ただし、ソースマップを見ると、ディレクトリ パスとファイル名が間違っている可能性があります。
ソースマップを Grunt、usemin、uglify、rev で動作させる方法はありますか?
gruntjs - Grunt を使用して、連結、縮小、醜化された JavaScript を複数のファイルに分割する
現在、JS アプリケーションを構築するという単調なタスクがあります。useminPrepare/usemin を使用して concat、minify、uglify プロセスを制御し、結果を 1 つの出力ファイルとして出力します。これは、私たちのアプリケーションに最適です。
現在、アプリケーションのパフォーマンス チューニングを試みており、連結された、縮小化された、または醜い化された JavaScript を N 個の個別のファイルに分割したいと考えています。N は、すべてのファイルがネットワークを介して CDN からブラウザーにできるだけ速く同時に移動するための最適なサイズです。
醜い JavaScript を複数のファイルに分割しようとした人はいますか? これを行うための最良のアプローチは何ですか?
javascript - 縮小された JS により、ページの更新時に ie 11 のメモリが 1MB 増加する
縮小された JavaScript を含む application.js ファイルがあります。IE11 では、ページを更新するたびに、最終的にアプリがクラッシュするまで 1MB のヒープが増加します。JavaScript を縮小しなければ、すべて問題なく、ヒープ サイズは 250k のままです。ufligy2JS、google-closure、および UI Compressor を使用してみましたが、この動作はすべての縮小ツールで一貫しています。
js が縮小されたときにのみヒープが成長する理由についてのアイデアはありますか?
javascript - Grunt Uglify は、ブラウザが同意しないコードを生成します
私は Grunt と grunt-contrib-uglify を初めて使用します。テスト JavaScript ファイルを作成しました。
これを醜くすると、次のように表示されます。
私は2つのことで混乱しています:
("Test")
と の間にセミコロンではなくコンマがあるのはなぜtest
ですか?- このコードが実際に期待される結果を生成するのはどうしてでしょうか?
Chrome で実行すると、アラートは適切に表示されますが、コンソールは不平を言いUncaught TypeError: test is not a function
ます。JSHint で実行すると、「代入または関数呼び出しが予期され、代わりに式が見られました」と報告されます。
grunt-contrib-uglify は、Chrome も私も完全に理解していない JavaScript の側面を利用していますか?
javascript - AngularJS で構築された既存のアプリに grunt を追加する
私は、yeo、grunt、bower などを使わずに構築された AngularJS アプリケーションを持っています。これは現在、Rails を介して行われています。しかし、特定の問題により、Rails から AngularJS アプリを分離し、純粋に API として Rails を使用するプロセスを進めています。
- grunt を既存のアプリに統合するにはどうすればよいですか? これが可能かどうか。
- 落とし穴?
アプリの現在のアーキテクチャに従って、コントローラー、サービス、テンプレート、フィルター、ディレクティブはすべて別のフォルダーにあります。
- grunt を実装するために必要な特定のフォルダー構造はありますか?
実行する必要がある基本的なこと:
- ソースファイルを1つに圧縮します(コントローラーを1つのコントローラーになど)
- 縮小する
現在の gruntFile
どうすれば始められますか? これが明らかな場合は申し訳ありませんが、うなり声を使用するのはこれが初めてなので、適切なアドバイスが必要です。
javascript - コメントアウトされたコードからの解析エラーが原因でうなり声が失敗する
jquery を含む一連の js を連結すると、「1019844 行の予期しないトークン (])...」について不平を言うとエラーが発生し、その行を見ると、コメントアウトされてはならないコードが含まれています。コメントアウトされる
最初の行には、コメントであってはならないコメントがあります。手動で介入せずにうなり声を出すにはどうすればよいでしょうか?
編集:私のgruntjsのスニペット
javascript - grunt の新機能 - 警告: タスク "concat, uglify" が見つかりません
タイトルが言うように、私は Grunt が初めてです。http://24ways.org/2013/grunt-is-not-weird-and-hard/にあるチュートリアルに従っています。これは古いチュートリアルですが、ほとんどは同じように機能するようです。「grunt-contrib-concat」と「grunt-contrib-uglify」をインストールし、両方を個別に実行できます。しかし、 を実行するgrunt
と、次のエラーが表示Warning: Task "concat, uglify" not found. Use --force to continue. Aborted due to errors.
されます。私のファイルは次のとおりです。
Gruntfile.js:
パッケージ.json: