問題タブ [grunt-contrib-concat]

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.

0 投票する
1 に答える
132 参照

javascript - ディレクトリファイルを連結する最も効率的な方法は?

非常に厄介な質問のタイトルで申し訳ありません。誰かがこの質問を表現するより良い方法を思いつくことができれば、すぐに変更します.

私は Angular と RequireJS を使用してアプリを構築しており、パフォーマンス、依存関係、遅延読み込みを最適化するために、次のようなファイル構造を構築しようとしています。

ルーティングを設定した場所で、任意のビューにアクセスするユーザーが、ディレクトリ (およびサブディレクトリ)内の他のすべてのファイルを連結し/registration/た全体をロードできるようにしたいと考えています。サイトの「セクション」全体を一度にユーザーに提供するだけでなく、複数の、場合によっては重複する依存関係を含める必要があるため、行き詰まりました。ほとんどのユーザーはサイトのセクションにアクセスすることは決してないため、上記のサンプルは、すべてのファイルを前もってロードしたくない理由を示していることを願っています。私はうなり声でこれを達成する最も効率的な方法を見つけようとしていますが、これまでのところ、次のようなコードで非常に手動で作業しています:_registration.module.js.js/registraionadmin

私が達成しようとしていることを行うには、より効率的で手作業の少ない方法が必要だと思います。誰か提案はありますか?

0 投票する
1 に答える
1489 参照

css - Grunt: .CSS ファイルをコンパイル済みの .SCSS ファイルに連結する方法は?

私はうなり声を学んでいます、そしてそれは素晴らしいです!

バックグラウンド:

私のプロジェクトは SASS ( .scss) を使用して構築されており、grunt のcompassプラグインを使用.scssして複数の出力を 1 つにコンパイルし.CSSています。

問題:

.cssファイルが関連付けられているjQueryプラグインを使用しています。Grunt に次のようにさせたい:

  1. *.SCSS をコンパイルします。frontend.css
  2. plugin.css完了したら、の最後に連結しますfrontend.css
  3. 縮小しfrontend.cssます。

grunt compass のコンパイル後に実行される CSS の concat ルールを追加しようとしました。concat ルールを以下に示します。

grunt タスクは次のようになります。

私が使用している Grunt プラグインのリストは次のとおりです。

を呼び出すとconcat:css、plugin.css が連結されますが、タスクを実行するたびに追加されるため、同じ CSS の複数のコピーがファイルに挿入されます。

を呼び出すnewer:concat:cssと、ファイルが に連結されることはありませんfrontend.css

どんな助けでも大歓迎です!

0 投票する
1 に答える
1148 参照

gruntjs - Grunt テンプレートの補間配列は文字列として解釈されます

前のタイトル: 「Grunt の concat タスクが動的構成値を使用しないのはなぜですか?」

Grunt によって連結されたファイルを動的に構成しようとしていますが、その際にgrunt-contrib-concatプラグインが動的に設定された値を取得していないように見えるこの問題に遭遇しました。最初は何か間違ったことをしていると思いましたが、独自のタスクを作成し、同じ動的値を使用した後、すべてが意図したとおりになりました. それでは、grunt concat タスクが同じ値を取得して使用しないのはなぜでしょうか?

動作を再現する gruntfile を以下に示します (要旨: fatso83/73875acd1fa3662ef360)。

編集: 新しいリード:文字通り何時間もどこにも行かなかった後、Grunt のホームページで次の 文に出くわしました:

nonull tr​​ueに設定すると、操作に一致しないパターンが含まれます。このオプションを grunt の --verbose フラグと組み合わせると、ファイル パスの問題のデバッグに役立ちます。

それを構成に追加します(これを反映するために上で編集しました)、少なくとも何かが動的な値で何かをしていることを示す次のエラーメッセージが表示されました:

他のタスクでさらにデバッグを行った後、タスクにmyTask送信されたデータがthis.data配列ではなく文字列値であることがわかりました。文字列補間を行っていることを考えると、これはおそらくそれほど驚くべきことではありませんが、これは他の補間機能と一致しません。たとえば<%= otherTask.fooTarget.src %>、他のタスクのsrcプロパティを配列値として取得します。

問題は、補間された値を文字列ではなく配列として concat タスクに渡すことをどのように回避できるかということです。

0 投票する
1 に答える
63 参照

javascript - Grunt を使用した Dryer ファイル パス

プロジェクトに grunt を追加し、CONCAT タスクを使用して複数の JS ファイルを作成していますが、static/js/... を繰り返すのではなく、ファイル パスを削除したいと考えています。

0 投票する
0 に答える
1746 参照

gruntjs - Grunt uglify が端末に出力ファイル レポートを表示しない

実行するgruntと、端末にこの出力が表示されます。

uglify と autoprefixer は出力を表示しません

しかし、私が実行するとgrunt -v

uglify は動作し、ファイル出力を書き込み、ファイル レポートを表示します。

-v がないと機能しないのはなぜですか? 以前はターミナルに表示されていたのを覚えています。

ここに私のGruntfile.jsがあります

0 投票する
0 に答える
98 参照

ruby-on-rails - Rails Asset Pipeline から Grunt ベースのアプローチへ

私はGruntを試してみたいので、プロジェクトを複製したタスクのために、デフォルトのアセットパイプラインを使用してGruntとそのタスクを介してすべて動作するように変換したいと考えています。

その後、両方のアプローチを評価し、最良と思われる方法を選択します。

application.rbファイルでパイプラインを無効にしました。私は自分を設定しましたが、Gruntfile.jsまず最初にそれを取得して、javascript ファイルを連結したいと考えています。私はgrunt-contrib-concatタスクを使用していますが、処理されたファイルを配置するように grunt に指示するのに最適な場所がわかりませんか?

でしょう/publicか?これらのファイルがどこから提供されるのか混乱していますか? ビューで Rails アセット ヘルパーを使用できず、自分で参照する必要があることはわかっていますが、どこから?

お役に立てれば幸いです。