問題タブ [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 が親ディレクトリに自分のファイルを見つけられない
私が書いた他のすべてのノードプロジェクトとは異なり、これはノードサーバーのフォルダーがルートではない必要があります。現在のフォルダ階層は次のとおりです。
GruntFile.js
、package.json
、およびserver.js
はすべて次の場所にあります。nodeserver/
ここに私のGruntFileがあります:
grunt を実行すると、指定したファイルが見つかりません。これは応答です:
js ファイルが表示されないのはなぜですか?
gruntjs - Grunt uglifyがファイルを見つけられない
次のディレクトリ構造があります。
development/js/pages 内のすべてのファイルを取得して js/pages に出力し、grunt uglify を使用してそれらを縮小しようとしていますが、それでも個別のファイルを保持しています。すべてのファイルを結合したくありません。私は次のことを試しました:
しかし、これは私にエラーを与えます: js/page ファイルを書き込めません
次に、uglifyのドキュメントにあるこれを試しました:
しかし、これにより、development/js/pages の各ファイルに対して次のエラーが表示されます。
ソースファイル "filename.js" が見つかりません
そして、ソースファイルが空であるため、Destination (js/page) not written という別のエラーが表示されます。
理由はありますか?
javascript - Grunt で特定のファイルをオーバーライドする
私には 3 つのプロジェクトがあります。Proj A には、多くの異なるプロジェクトで再利用され、編集できないファイルを含む基本的なセットアップが含まれています。そして、プロジェクト A のファイルをベースとして使用するプロジェクト B と C。各プロジェクトには独自の Gruntfile があります。
Proj B および C でいくつかの JS および SCSS ファイルをカスタマイズしたい (例: 色/変数の変更)。ただし、Proj A は時々更新される可能性があるため、最新の変更を B および C にプルするときに上書きされるため、これらの基本ファイルを編集することはできません。 Proj A のファイル。
1)
それを行う方法は、編集したいファイルをコピーし、そのファイル名に単に「オーバーライド」を追加することです。
ui/styles/sass/ _override_colors.scss *(ui/styles/sass/_colors.scss をオーバーライドする必要があります)* ui/scripts/ _override_base.js (ui/scripts/base.js をオーバーライドする必要があります)
問題は、Gruntfile でこのルールをどのように指定すればよいかということです。ただし、コピーするファイルが大きい場合、それはオプションではない可能性があります。これは、2 つの非常に同一の大きなファイルを意味するためです。
2)
もう 1 つの方法は、_overrides.scss という新しいファイルを追加し、それを @import ファイルの最後に追加することです。ただし、多くのことを変更する場合は、面倒で大きすぎる可能性があり、コードの重複を意味するため、それは悪い考えです (変数のみをオーバーライドし、クラスをオーバーライドしない場合を除きます)。
どのアプローチを採用しますか?この問題を解決するための他のより良い方法はありますか?
ありがとう!
javascript - Grunt Ugliify いくつかのスクリプト
angularjs プロジェクトの特定の js を醜くしたいと考えています。al jsパスを醜くしたくありません。
私はこれで試しました
この
運ではありません。
誰かが私を助けてくれるなら、あなたの助けに感謝します。
ありがとう。
javascript - Grunt のファイル リスト リゾルバー
asmcrypto.jsプロジェクトgrunt-contrib-uglify
のビルドに使用しています。適切に構造化されており、それぞれ独自のフォルダーにある個々のコンポーネントに分割されています。
ここで、縮小されたファイルに含めるコンポーネントを選択するオプションをユーザーに提供したいと思います。コンポーネントには他のコンポーネントへの依存関係がある場合があり、それらは自動的に解決される必要があります。
最終的な解決策はgrunt with:aes-cbc with:hmac-sha256
、依存関係も組み込まれていることを暗示するようなものであるべきだと思います。
私の観点からは、依存関係ツリーをトラバースし、に渡すことができる結合されたソース ファイル リストを返すことができる、うなり声の高いプラグインである必要がありますgrunt-contrib-uglify
。
数時間試してみてください:
grunt-feature
grunt-component-build
grunt-resolve
私が説明したことを誰も実行できないか、ドキュメントから適切な方法を見つけられませんでした。
gruntjs - grunt-contrib-uglify の出力が空です
私はここで答えを一日中探していましたが、私の設定が台無しになっているだけだと確信しています。
短いバージョン: grunt を構成しました。grunt-contrib-concat WORKS。grunt-contrib-uglify は動作すると言いますが、空のファイルを出力します。
長いバージョン: プロジェクトの構造は次のとおりです。
foo.js と bar.js を取得して、"app.js" という名前の /dist/js ディレクトリ内のファイルに出力したいと考えています。
これが私の設定です:
はい、Grunt は私の DEV ディレクトリにインストールされています。
私が走るとき
次のコンソール出力が得られます。
最終的に、ファイル /projectRoot/prod/js/app.min.js を作成することになります
...しかし、それは空です。
私が間違っていることについてのアイデアはありますか?? この構文は、readme およびその他のドキュメントに記載されている内容に正確に従います。concat タスクは正常に機能しています。
どんな助けでも大歓迎です。ありがとう!
--EDIT-- Grunt が projectRoot に存在するように更新しましたが、出力に違いはありません。
==============
アップデート
空のファイルを出力していた理由がわかりました。どうやら自己呼び出しの匿名関数は「縮小」されているか、少なくともこの場合は縮小されています。これは、ここにアクティブなコードがないことが原因である可能性があります。私はこれをさらに調べるつもりです。実際に何かをしたり、グローバル変数を参照したりする関数は残ると思います。
==============
最終更新
問題は解決された。すべてのコードを縮小するオプションを使用しても、参照されていない変数などは削除されます。テスト ファイル内のものは使用されていません。上記の関数への参照を追加すると、それらが表示されます。
これが誰かに役立つことを願っています。
javascript - Gruntのuglifyjsタスク中にDEBUGを条件付きで削除する
ビルド時に DEBUG ステートメントを削除したいのですが、 http://lisperator.net/uglifyjs/compressglobal_defs: { DEBUG : false }
で、debug 句にラップされたものをすべて削除するように定義できることに気付きましたif (DEBUG) {}
私のuglifyタスクはDEBUGセクションを削除していないようです.私が間違っていることについて何か考えはありますか?
私は grunt-contrib-uglify v0.3.3 を使用しています
これが私の単調な仕事です: ...
somefile.js