問題タブ [grunt-usemin]
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.
gruntjs - Grunt usemin: 連結された JavaScript ファイルが作成されない
Yeoman ジェネレーターでuseminタスクを使用しています。HTML では、個別の JavaScript ファイルが 1 つのファイルへのリンクに置き換えられているため、うまく機能しているように見えます。ただし、参照されているファイルは作成されていません。設定がありませんか?
Gruntfile.js
index.html
端末処理メッセージ
(HTML) の結果:<script src="assets/js/main.js"></script>
しかし、main.jsファイルは作成されません
javascript - grunt-usemin: カスタム フローの定義
grunt-useminプラグインを使用しています。以下、どうしようかな。
に usemin config の 2 つのブロックがありindex.html
ます。
最初のブロックscriptsmin.js
は縮小されたファイルです。2 番目の にはscripts.js
、縮小が必要なすべてのファイルが含まれています。
私はするのが好きです。
- 2 番目のブロックでミニファイヤ (uglifyjs) を実行する
- 最初のブロックを 2 番目の縮小版と連結する (ステップ 1)
これらのブロックが同じファイルにある場合は可能ですか。フローのセクションを見ました。構成のブロックに名前を付けて、それぞれに個別のフローを設定できるかどうかを追跡できませんでした。ファイル名(index.html)に基づいたフローについて話します。うなり声の部分はどのように書けばよいでしょうかuseminPrepare
。
gruntjs - カスタムステップオプションを定義する
concat を実行し、特定のオプション (マングルのトップレベル変数) を使用して uglify を実行する Gruntfile があり、sed を使用して、index.html 内の縮小されたファイルへの参照を更新します。この解決策は機能しますが、sed が原因でメンテナンスが容易ではありません。代わりにuseminを使用しようとしていましたが、uglifyjsの適切なオプションを使用して独自のカスタムステップを定義する方法がわかりませんでした.docoにはそれを行うための例がありません. 以前に書いたものと同じ uglify タスクを使用しようとしました。
しかし、私はこのエラーが発生しています:
Warning: Cannot find module 'path-to-module\node_modules\grunt-usemin\lib\config\uglify' Use --force to continue.
これを行うことは可能ですか?もしそうなら、私はここで何が間違っていますか?
gruntjs - grunt-usemin とインライン スクリプト
私は grunt-usemin を使い始めており、このスクリプト内の URL を変更したいと考えています。
私のlayout.htmlで
そのために grunt-usemin を設定するにはどうすればよいですか?
私のgruntfile.jsには
gruntjs - Grunt を使用してベンダー CSS ファイル内のイメージの URL を使用および書き換える
grunt-usemin は私が変身するのを助けます
完全に結合され、縮小された js に:
concat、cssmin、uglify の後、画像とその場所を除いて、ほぼ完璧なフォルダー構造ができました。
これが私の問題です:
これらすべてのベンダーの css ファイルには、イメージの場所が含まれています。悪い点は、それらすべてが異なる種類の場所を共有していることです. css フォルダー内の画像を使用しているものもあれば、img フォルダー内の画像を使用しているものもあります。
すべての画像の URL を書き換えるように grunt usemin を構成するにはどうすればよいですか?
workflow - うなり声のあるソースマップ
grunt でコンパイルされたアプリのソース マップを含むワークフローを知っていますか?
uglifyjs
ソースマップを簡単に生成できるようなプラグインについてはよく知っています。しかし、これを 1 回限りのソース マップを作成するのではなく、より複雑なワークフローに組み込むことを検討しています。
最も人気のある Yeoman ジェネレーター (私が知っている) では、ワークフローでソース マップが欠落していることに気付きました。これは、ソース マップの主要なプラグインがサポートされていないためですか? それとも、ワークフローにソース マップが必要ないということでしょうか?
私が遭遇した一般的な grunt プラグインの注目すべき問題の原因は次のとおりです。
uglify
ハッキーな修正なしでは、最も基本的なプロジェクト構造でさえ処理できません。
usemin
また、プロジェクトごとに 1 つしかサポートできないという点で、最も単純な構成を超えてソース マップを処理することもできません(ただし、修正するにはハックが必要です)。可能な解決策は明らかに使用を完全に停止することですが、そうすると、 、、および とusemin
組み合わせるなど、すべての利点を失うことになります。rev
watch
connect
アプリをテストするときに、連結されていない/縮小されていないソースを使用してテストすることが最善の方法であると考えています。もちろん、これは理想的とは言えません。テスト環境が本番環境を可能な限り反映するようにしたいからです。
grunt プロジェクトでソース マップを使用しますか? どのようにしますか?そうでない場合、サポートの欠如をどのように回避しますか?
ruby-on-rails - すべてのjsをindex.htmlに自動的に含めることができますか?
私はうなり声が初めてです。私はレールから来て、角度をつけています。私が見ることができるものから、grunt usemin は<script src=...>
ビルド ディレクティブ間を置き換え、grunt ビルド中にそれを単一の縮小された js に置き換えることができます。それは展開に最適です。
ただし、開発中に新しい角度コントローラーを追加するときはいつでも、それらを index.html に追加することも忘れないでください。これは面倒です。機能フォルダーを移動する場合も同様で、index.html 内のすべての src パスを変更する必要があります。
開発中に、grunt が私のすべてを監視し、src/**/*.js
それらすべてを自動的に index.html に追加してくれるといいのですが...開発中に require_tree を実行するだけの Rails アセット パイプラインとアセット マニフェストに似ています。ファイルはどこにでも置くことができ、自動的に利用可能になります。
うなり声ウォッチャーのためのそのような既存のソリューションまたは例はありますか? ありがとう