問題タブ [gruntjs]

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 投票する
2 に答える
6154 参照

node.js - HTML をきれいに印刷するためのモジュール?

私は、URL にヒットし、出力を静的 HTML ファイルに書き込む grunt ビルド ファイルに取り組んでいます。ヒットしている URL には圧縮された HTML が含まれており、静的ファイルに書き込む前にきれいに印刷したいと考えています。これを行うための適切なモジュールはありますか? 私は周りを見回しましたが、Max Ogden の html prettyprinter が私の最も近いオプションのようです (https://github.com/maxogden/commonjs-html-prettyprinter)。たぶん、それをgrunt-shellタスクか何かと組み合わせたら?本当に私は単にモジュールを必要とし、pretty(my-file.html) と言ってから fs を使用してそれを書きたいと思っていますが、これまでのところ、それはとらえどころのないことが証明されています。

0 投票する
4 に答える
8834 参照

javascript - grunt.js - ファイルを縮小するときの複数の宛先

私の grunt.js には、典型的な縮小タスクがあります。

複数の dest ファイルを持つ最も簡単な方法は何ですか? 次のように縮小したいと思います。

  • dist/precook.min.js
  • example/js/vendor/precook.min.js

組み込みの最小タスクは複数の宛先をサポートしていないように見えるため、単純な「コピー」タスクでこれを実現できると思います。誰かが私を正しい方向に向けることができますか?

0 投票する
4 に答える
6171 参照

javascript - Gruntを試していますが、モジュールを連結する簡単な方法が必要です

Gruntを使用するのはこれが初めてであり、すべてのjsモジュールを組み合わせてもらいたいと思います。各モジュールは、「use strict」宣言を含む、すぐに実行される関数にラップされ、1つのファイルにまとめられます。 'use strict'宣言が1つだけで、すぐに実行される関数が1つあります。

これは通常どのように行われますか?

これが一般的なユースケースになると思いましたか?おそらく私は物事を間違った方法で行っているのでしょうか?モジュールの読み込み形式(commonjs、amdなど)のいずれかを使用する必要がある場合、これらのファイルはすべてブラウザーに常に一緒に読み込まれるため、実際には、すぐに実行されるすべての関数を削除してもかまいません。重要な部分は、最終結果が何らかの形でラップされ、lintおよびユニットテストに合格し、「usestrict」宣言が含まれていることです。

(明確にする必要があります。動作、リンティング、単体テスト、連結、および縮小を行っています。最終的な連結ファイルに不要な即時実行関数がたくさんあるのを見ると、何か間違ったことをしているように感じます。)

0 投票する
2 に答える
1288 参照

windows - 崇高なテキスト2コンソールは、gruntjs出力の最初の行のみを表示します

Windows で崇高なテキスト 2 で grunt を実行すると、出力の最初の行のみが表示されると思われるようです。不思議なことに、すべてのタスクが完了します。"shell": trueorを追加falseしても効果がないようです。追加cmd /cstart /wait /b.

崇高なテキストが出力の残りを食べないようにするにはどうすればよいですか?

私が得る唯一の出力は次のとおりです。

更新 これは Sublime Text 2 issue 23: Windows Build Panel Eats Stdoutに関連しているようです。

更新 回避策はありますが、醜いです。

0 投票する
4 に答える
5088 参照

javascript - requirejs で JSLint/Hint を使用する

駆動プロジェクト用に自動ビルド スクリプト ( を使用) をセットアップしています。そのため、必要なすべてのファイルに対して / を実行してから、r.js で連結および縮小したいと考えています。js フォルダーには、lint したくない開発ファイルがたくさん含まれているため、JSLint に渡すことはできません。私の最初の考えは、r.jsを実行することでしたjs/**/*.jsoptimizer: 'none'、連結されたファイルをリントしてから縮小しますが、これは2つの理由からオプションではありません. 最初に、lint したくないベンダー ライブラリが含まれます。次に、エラーのある行を見つけて、それがクラスであることを見つけ、dev フォルダーで適切な js ファイルを見つけて、そこで修正し、r.js を再度実行して、最後に lint します。繰り返しますが、私たちのワークフローにとって非常に面倒です。したがって、リンティングをr.jsオプティマイザプロセスに接続するか、少なくとも何らかの方法でrequirejs依存関係ツリーのリストを取得して、解析してリントに渡す可能性を探しています。または、自動化されたプロセスで実行可能なソリューションを思いつくでしょう。

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

node.js - Ubuntu12.04で多くのCPUを使用するうなり声の時計

私はgruntを使用して、towerjsプロジェクトのcoffeescriptファイルを監視し、変更されたときにそれらを再コンパイルしています。このための構成はtowerjsによって生成され、かなり正常に見えます。問題は、このプロセスを開始すると、CPUコア(実際には1つのハイパースレッドのみ)がペギングされていることを確認できることです。監視対象から多くのパスを削除すると、CPUの約25%まで下げることができますが、それでもかなりひどいです。

いくつかの既知の問題への参照と、ノードのfs API 、特にfs.watchとのクロスプラットフォームの不整合をいくつか見つけました。grunt-simple-watchを試しましたが、それ以上の効果はありませんでした。

Guardをセットアップすることはできますが、正しく機能させるのは面倒かもしれません。機能的にうなり声は問題ないようです。他に何か提案があれば、興味があります。

0 投票する
2 に答える
215 参照

unit-testing - GruntJSテストを実行するにはどうすればよいですか?

gruntjsリポジトリのクローンを作成しました。

GruntJSのテストを実際に実行するにはどうすればよいですか?

(GruntJSを使用して独自のテストを実行したいという意味ではありません。GruntJS自体のテストを実行したいという意味です。)

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

html - grunt jsを使用して、どのように動的に追加できますか to static html files?</h1> <div id="body"><p>More specifically, I want to add the titles by referencing an external JSON file, let's call it titles.json. </p> <p>One of the things I use g</a> </h3> <div class="s-post-summary--content-excerpt"> </div> <div class="s-post-summary--meta"> <div class="s-post-summary--meta-tags tags js-tags t-cñ t-ûnet t-aspûnet-mvc t-aspûnet-mvc-4 t-actionfilterattribute"> <a href="/tags/html" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">html</a><a href="/tags/json" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">json</a><a href="/tags/build-process" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">build-process</a><a href="/tags/concatenation" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">concatenation</a><a href="/tags/gruntjs" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">gruntjs</a> </div> <div class="s-user-card s-user-card__minimal"> <div class="s-user-card--info"> <div class="s-user-card--link d-flex gs4"> </div> </div> <time class="s-user-card--time" style="margin-left:5px;"> <span title="2022-04-18 08:34:11Z" class="relativetime"> </span></time> </div> </div> </div> </div><div id="question-summary-71909431" class="s-post-summary js-post-summary" data-post-id="71909431" data-post-type-id="1"> <div class="s-post-summary--stats js-post-summary-stats"> <div class="s-post-summary--stats-item s-post-summary--stats-item__emphasized" title="Score of 0"> <span class="s-post-summary--stats-item-number">0</span> <span class="s-post-summary--stats-item-unit">投票する</span> </div> <div class="s-post-summary--stats-item " title="1 answers"> <span class="s-post-summary--stats-item-number">1</span> <span class="s-post-summary--stats-item-unit">に答える</span> </div> <div class="s-post-summary--stats-item " title="369 views"> <span class="s-post-summary--stats-item-number">369</span> <span class="s-post-summary--stats-item-unit">参照</span> </div> </div> <div class="s-post-summary--content"> <h3 class="s-post-summary--content-title"> <a href="/questions/13110125" class="s-link">node.js - コンパス コマンド ラインを使用して個々の .scss ファイルをコンパイルする</a> </h3> <div class="s-post-summary--content-excerpt"> <p>コンパス コマンド ライン ユーティリティを使用して個別にファイルをコンパイルする方法はありますか?</p> <p>私が尋ねている理由は、現在、ディレクトリのコンパスコンパイルコマンドを実行する面倒​​なタスクがあるためですが、プロジェクトが大きくなり、1 つのファイルが変更されたときに多数のファイルをコンパイルしようとすると、これはおそらく問題になるでしょう。コンパス コンパイル app/css/style.scss:app/css/style.css のような方法があるかどうかを確認しようとしています。</p> </div> <div class="s-post-summary--meta"> <div class="s-post-summary--meta-tags tags js-tags t-cñ t-ûnet t-aspûnet-mvc t-aspûnet-mvc-4 t-actionfilterattribute"> <a href="/tags/node.js" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">node.js</a><a href="/tags/sass" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">sass</a><a href="/tags/compass-sass" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">compass-sass</a><a href="/tags/gruntjs" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">gruntjs</a> </div> <div class="s-user-card s-user-card__minimal"> <div class="s-user-card--info"> <div class="s-user-card--link d-flex gs4"> </div> </div> <time class="s-user-card--time" style="margin-left:5px;"> <span title="2022-04-18 08:34:11Z" class="relativetime"> </span></time> </div> </div> </div> </div><div id="question-summary-71909431" class="s-post-summary js-post-summary" data-post-id="71909431" data-post-type-id="1"> <div class="s-post-summary--stats js-post-summary-stats"> <div class="s-post-summary--stats-item s-post-summary--stats-item__emphasized" title="Score of 0"> <span class="s-post-summary--stats-item-number">0</span> <span class="s-post-summary--stats-item-unit">投票する</span> </div> <div class="s-post-summary--stats-item " title="3 answers"> <span class="s-post-summary--stats-item-number">3</span> <span class="s-post-summary--stats-item-unit">に答える</span> </div> <div class="s-post-summary--stats-item " title="5139 views"> <span class="s-post-summary--stats-item-number">5139</span> <span class="s-post-summary--stats-item-unit">参照</span> </div> </div> <div class="s-post-summary--content"> <h3 class="s-post-summary--content-title"> <a href="/questions/13130710" class="s-link">git - gruntjs で git リビジョンを記録できますか</a> </h3> <div class="s-post-summary--content-excerpt"> <p>gruntjs と yeoman.io を使用して webapp をビルドします。</p> <p>ビルドの元になった git リビジョン/コミット/sha を記録できるようにして、デプロイされたバージョンを調べて、それがどこから来たのか、新しいリリースで何が変更されたのかを再確認できるようにしたいと考えています。</p> </div> <div class="s-post-summary--meta"> <div class="s-post-summary--meta-tags tags js-tags t-cñ t-ûnet t-aspûnet-mvc t-aspûnet-mvc-4 t-actionfilterattribute"> <a href="/tags/git" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">git</a><a href="/tags/gruntjs" class="post-tag flex--item mt0 js-tagname-cñ" title="" rel="tag">gruntjs</a> </div> <div class="s-user-card s-user-card__minimal"> <div class="s-user-card--info"> <div class="s-user-card--link d-flex gs4"> </div> </div> <time class="s-user-card--time" style="margin-left:5px;"> <span title="2022-04-18 08:34:11Z" class="relativetime"> </span></time> </div> </div> </div> </div> </div> <br class="cbt"> <div class="s-pagination site1 themed pager float-left"> <a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=1" rel="" title="Go to page 2">1</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=2" rel="" title="Go to page 2">2</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=3" rel="" title="Go to page 2">3</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=4" rel="" title="Go to page 2">4</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=5" rel="" title="Go to page 2">5</a><a class="s-pagination--item js-pagination-item is-selected" href="/tags/gruntjs?p=6" rel="" title="Go to page 2">6</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=7" rel="" title="Go to page 2">7</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=8" rel="" title="Go to page 2">8</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=9" rel="" title="Go to page 2">9</a><a class="s-pagination--item js-pagination-item " href="/tags/gruntjs?p=10" rel="" title="Go to page 2">10</a></div> </div> <div id="sidebar" class="show-votes" role="complementary" aria-label="sidebar"> <div class="module js-gps-related-tags" id="related-tags"> <h4 id="h-related-tags">Reference</h4> <div data-name="javascript"> <a href="https://php.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">php</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">1429865</span> </span> </div> <div data-name="javascript"> <a href="https://c-cpp.com" class="post-tag no-tag-menu js-gps-track" target="_blank">c/c++</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">756500</span> </span> </div> <div data-name="javascript"> <a href="https://nginx.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">nginx</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">49975</span> </span> </div> <div data-name="javascript"> <a href="https://mongodb.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">mongodb</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">159057</span> </span> </div> <div data-name="javascript"> <a href="https://mybatis.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">mybatis</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">3233</span> </span> </div> <div data-name="javascript"> <a href="https://anaconda.org.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">anaconda</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">13410</span> </span> </div> <div data-name="javascript"> <a href="https://pycharm.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">pycharm</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">14671</span> </span> </div> <div data-name="javascript"> <a href="https://python.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">python</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">1902243</span> </span> </div> <div data-name="javascript"> <a href="https://vscode.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">vscode</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">56040</span> </span> </div> <div data-name="javascript"> <a href="https://dockerdocs.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">docker</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">110988</span> </span> </div> <div data-name="javascript"> <a href="https://github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">github</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">49000</span> </span> </div> <div data-name="javascript"> <a href="https://flask.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">flask</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">49129</span> </span> </div> <div data-name="javascript"> <a href="https://ffmpeg.github.net.cn" class="post-tag no-tag-menu js-gps-track" target="_blank">ffmpeg</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">24037</span> </span> </div> <div data-name="javascript"> <a href="https://jmeter.net" class="post-tag no-tag-menu js-gps-track" target="_blank">jmeter</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">16910</span> </span> </div> <div data-name="javascript"> <a href="https://matplotlib.net" class="post-tag no-tag-menu js-gps-track" target="_blank">matplotlib</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">63493</span> </span> </div> <div data-name="javascript"> <a href="https://getbootstrap.net" class="post-tag no-tag-menu js-gps-track" target="_blank">bootstrap</a> <span class="item-multiplier"><span class="item-multiplier-x">×</span> <span class="item-multiplier-count">54641</span> </span> </div> </div> </div> </div> </div> <footer id="footer" class="site-footer js-footer" role="contentinfo"> <div class="site-footer--container"> <div class="site-footer--logo"> <a href="https://stackoverflow.com"><svg aria-hidden="true" class="native svg-icon iconLogoGlyphMd" width="32" height="37" viewBox="0 0 32 37"><path d="M26 33v-9h4v13H0V24h4v9h22Z" fill="#BCBBBB"/><path d="m21.5 0-2.7 2 9.9 13.3 2.7-2L21.5 0ZM26 18.4 13.3 7.8l2.1-2.5 12.7 10.6-2.1 2.5ZM9.1 15.2l15 7 1.4-3-15-7-1.4 3Zm14 10.79.68-2.95-16.1-3.35L7 23l16.1 2.99ZM23 30H7v-3h16v3Z" fill="#F48024"/></svg></a> </div> <nav class="site-footer--nav"> <div class="site-footer--col"> <h5 class="-title"><a href="https://stackoverflow.jp" class="js-gps-track" data-gps-track="footer.click({ location: 3, link: 15})">Stack Overflow 日本語サイト</a></h5> <p>CC BY-SA知識共有ライセンス契約に従う。</p> </div> </nav> </div> </footer> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?709ff2ad9744e86b5b0eee677fc13ede"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-1MW5BV8G8E"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-1MW5BV8G8E'); </script> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6117966252207595" crossorigin="anonymous"></script> </body> </html>