問題タブ [uglifyjs2]
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.
php - Symfony 2.5 および UglifyCSS/JS を使用した CSS/JS ファイルの縮小/集約の問題
開発環境で UglifyJs2 と UglifyCss の両方を有効にするために、これらの手順に従いました (まず、この問題で運用サーバーをダウンさせる危険を冒すことはできません!)
私の下で、config_dev.yml
次のように構成しました(パラメーターだけで始めましたが、bin
何か他の問題が発生した場合に備えて、追加の構成を追加しました。)
そして私のbase.html.twig
ファイルで:
と
を実行するphp app/console assetic:dump --env=prod --verbose
と、すべてのファイルがエラーなしで生成されます。この時点でさらに縮小されています。
しかし、ブラウザーでアプリをロードすると、すべての CSS および JS アセットが 500 エラーを返します。
以下は、各 JavaScript ファイルが返すものと、各 CSS ファイルが返すものです。UglifyJS および/または UglifyCSS の両方、または Node 自体からシグナル "5" エラーが発生しています。間違ったものがどこかに送られているのではないかと思います。
何か案は?開発環境を実現するために、ローカルの MAMP サーバーを実行しています。また、トラブルシューティングの手順として、パスの問題などの明らかな問題を回避するために、パスの「Git Repos」からスペースを取り除いたことにも注意してください。
アップデート
同じ設定config_dev.yml
を自分で実行しconfig_prod.yml
てみましたが、すべてが本番側で完全に機能することがわかりました。縮小されたアセットをロードしようとするapp_dev.php
と問題が発生するようです...しかし、まだ何がわかりません! 縮小化を開発環境でテストできればいいのですが、そのため、この問題と解決のための対話を促進するために、質問を開いたままにしています。
node.js - /*! を保持する方法 UgliifyJS2 でコメント?
デフォルトの動作では、@license
または@preserve
...を探します。
しかし、多くのプラグインとライブラリはまだ/*!
コメント ブロックのライセンスに使用されています...
で始まるコメントを保持するためにUglifyJS2を使用するにはどうすればよい/*!
ですか?
javascript - デバッガーがソース マップで誤った情報を表示する
これは 2 回目の発生であり、ご想像のとおり、デバッガーが間違った情報を表示することは、デバッグ時に起こりうる最悪の事態です。ソース マップを使用すると、デバッガーは VM が特定の行にあると認識しますが、実際にはまだそこにないか、さらに悪いことに、この行に到達することはありません。ソース マップは、 UglifyJS2を使用する Grunt uglify プラグインで生成されます。
例:
no it's not
デバッガーがif
私が経験した他の例は次のとおりです。
プログラムを続行すると、console.log(that)
最終的には発火しました。
他の誰かが同じ問題を経験しましたか? UglifyJS2 または Google Chrome の問題である可能性が高いですか?
Chrome バージョン: 38.0.2125.8 dev (64 ビット)
Uglify2JS: 2.4.0
grunt-contrib-uglify: 0.5.1
r.js - r.js ビルド構成ファイルで --in-source-map uglify2 構成オプションを設定する
--in-source-map
UglifyJS2 で利用可能なオプションを使用して、ソース マップ ファイルを使用し、圧縮された js と共に新しいファイルを出力して、マルチレベルのソース マッピングを実行したいと考えました。私はr.js
JavaScriptファイルの縮小を行うために使用しているため、UglifyJS2に渡される構成値を定義する方法があることがわかりました. これが r.js ビルド ファイルでどのように行われるかを示すサンプルを次に示します。
明らかに、r.js には構成オプションを構造化する独自の方法があり、--in-source-map
この構造に従ってオプションを設定する方法を理解できませんでした。config オプションの横に、次のステートメントをoutput
要素またはcompress
要素、さらには外部に入れてみました。warnings
また、ファイル名を引用符で囲んでみました。残念ながら、どの方法も機能しませんでした。誰でもこの問題を理解するのを手伝ってもらえますか? このオプションが r.js でサポートされていない可能性もありますか?
javascript - 外部 Webjar ソースの Play 2.3.x ビルドでの Javascript 醜化を高速化
Play フレームワーク 2.3.6 と Web ライブラリの依存関係に Webjars を使用しています。つまり、私の build.sbt には "org.webjars" % "angularjs" % "1.2.26" のようなものが含まれています。Javascript ソースを醜くするために、pipelineStages := Seq(rjs, uglify, digest, gzip) を build.sbt に追加しました。
現在、Play の 'stage' または 'dist' タスクを実行すると、すべての Javascript ファイル、つまり Webjar ライブラリのファイルも醜くなっているように見えます。
[情報] Uglify2 ファイル: /target/web/rjs/build/lib/angularjs/angular.js
縮小版が既に存在するため、外部の Webjar ライブラリからのソースはそのままにしておくことを期待していました。これに関する 1 つの問題は、uglify プロセスに時間がかかりすぎることです。醜化プロセスをスピードアップするにはどうすればよいですか?