問題タブ [sprockets]
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.
ruby-on-rails - Rails 3.1 アセットのパイプライン CSS とアクション メーラー
私の理解力が足りないだけなのか気になります。config で image_tag と config.action_mailer.asset_host を介して一連のアセットを使用するアクション メーラーがあります。画像やCSSではなく、JavaScript(必要な構成を含む)にアセットパイプラインを使用しているため。ActionMailer のビューは、さまざまな理由で、コンパイルしたくないので正しいです。そのうちの 1 つは、アドビ ツールでは動作しないため、デザイナーが CSS にタグを埋め込みたくないということです。
CSS と画像処理フォーム スプロケットをオフにする方法はありますか?
ありがとうチャーリー
ruby-on-rails - RailsControllerからアセットパスにアクセスする
構成ymlファイルをクライアント側で共有しています。サーバー側でもロードする必要があります。app/assets/ javascripts/configuration.yml内に配置しました。
ビュー内で#{asset_path'configuration.yml'}を使用してパスを取得することはできますが、コントローラー内で使用することはできません。「#{Rails.root} /app/assets/javascripts/configuration.yml」を使用して直接アクセスできましたが、ファイル名をデプロイするとダイジェスト文字列が追加されます。
コントローラから同じパスを取得するにはどうすればよいですか?
ruby-on-rails - 本番環境でのバックエンドアセットのオーバーライド
RefineryのWYMEditorの動作を少し変更する必要があるプロジェクトに取り組んでいます。これは、開発環境で正常に機能する、自分のニーズに合わせてjquery.refinery.wymeditor.js
使用および編集をオーバーライドすることで簡単に実行できます。rake refinery:override
ただし、本番環境では、オーバーライドは無視されます。つまり、コンパイルされたアセットにはjquery.refinery.wymeditor.js
バンドルからのファイルが含まれているだけであり、そのファイルをそこで直接編集すると、目的の効果が得られる場合がありますが、それは本来の方法ではありません。
奇妙なことに、この問題は、バックエンド関連のアセットをオーバーライドしようとしたときにのみ明らかになります。
私がリファイナリーエッジを使用していることを知っておくと便利かもしれません。
助けていただければ幸いです。
ruby-on-rails-3.1 - js ファイルのスプロケット エンコーディング エラー: 無効な UTF-8 バイト シーケンス
有効な utf-8 の文字を含むファイルをインクルードすると、Sprockets::EncodingError 例外がスローされます。
問題の行は次のとおりです。
ä 文字を置き換えれば問題は解決しますが、更新するたびにこのベンダー ファイルを編集することを覚えておく必要はありません。
どうすればこれを修正できますか?
ruby - どのソースにも sprockets-2.0.0.beta.10 が見つかりませんでした
私は#270に特に興味があります。ここで確認できます: http://railscasts.com/episodes/270-authentication-in-rails-3-1
コードをダウンロードして解凍し、auth-before ディレクトリにいます。
bundle install を実行すると、
Fetching source index for http://rubygems.org/
Could not find sprockets-2.0.0.beta.10 in any of the sources
私はそれを自分で修正しようとしましたが、これを取得しました:
私の宝石ファイルは次のようになります。
これを解決するにはどうすればよいですか?
アップデート:
以下の提案に従い、sass-rails からバージョン番号を削除しました。update コマンドを実行すると、次のようになります。
ruby-on-rails-3.1 - Rails 3.1 Asset Pipeline を使用してコンパイルされた JavaScript ファイルの先頭にボイラープレート コメントまたはライセンスを追加するにはどうすればよいですか?
アセット パイプラインを使用して JavaScript を作成しています。この JavaScript は、多くのサード パーティの開発者に引き渡されます。生成された (おそらく難読化された) 出力ファイルの先頭に警告コメントを配置したいのですが、sprockets と coffeescript の組み合わせでこれを実現する方法が明確ではありません。
これで次の結果が得られます。
私が欲しいのはこれ(またはそれに近いもの)です:
どうすればこれを機能させることができますか?
ruby - Jruby、Rails3.1、Sprockets - 同一ファイルエラー
Windows で Jruby 1.6.4 を実行している場合 - この問題は、Sprockets 2.0.0 および 2.0.2、Rails 3.1.0 および 3.1.1 で発生します。js ランタイムとして therubyrhino を使用していますが、これは execjs (jscript を正しく検出する) を使用する場合にも発生します。
スキャフォールディングされたコントローラーを使用してサンプル Rails プロジェクトを起動します。サーバーを起動します。コントローラーの css.scss ファイルを編集して、変更を加えて保存します。ページを更新。Mac/Linux では問題ありません。ただし、Windows では「同じファイル」エラーが発生します。これは、css.scss ファイルを変更するたびに発生します。これを回避するには、rake assets:clean を実行する必要があります。
coffeescript ファイルについても同じ動作です (ただし、Windows のみ)。スプロケット担当者に尋ねたところ、Rails コア チーム (私が所属しているチーム) に尋ねることを勧められました。ここでも質問をフォークすることにしました。
何かご意見は?
ところで、ここにエラーのサンプルがあります:
ruby-on-rails-3.1 - Rails 3.1 アプリで RequireJS を使用する
質問
Rails 3 (esp 3.1) アプリで RequireJS を使用したことがある場合、それはどのように機能しますか? 注意が必要な構成のトリックやその他の落とし穴はありますか?
バックグラウンド
Rails 3.1 の Sprockets ベースの Asset Pipeline で RequireJS を使用することを考えています。特に JavaScript コード用です。この選択の動機は 2 つあります。
- JS クライアント側コードに RequireJS のモジュール管理を活用したいと考えています。
- 私の JS ライブラリ コードを他のコンテキストで使用できるプリコンパイル システムが必要です。驚いたことに、Asset Pipeline プリコンパイラーは Rails に組み込まれた部分であり、Sprockets 自体の一部ではありません。
すべてのフィードバックに感謝します。
ruby-on-rails - Coffeescript/Sprockets '__extends' ヘルパーの重複
rails31 と coffeescript を使用しており、親クラスから拡張するいくつかのクラスを定義しています。これを実現するために、Coffeescript は生成された出力に __extends ヘルパー メソッドを追加します。問題は、スプロケットを使用すると、すべてのサブクラスにメソッドのコピーが追加され、多くの重複が作成されることです。
私のクラスは別々のファイルで定義されているので、スプロケットがそれらを個別に処理するためにコーヒーを飲んでいるようです。コーヒーとの結合オプションがあることは知っていますが、スプロケットでそれを使用する方法がわかりません。
スプロケットを使用するときにコーヒー ヘルパーを 1 回だけ生成できるかどうかは誰にもわかりませんか?
ruby-on-rails-3 - 構文エラーによる致命的ではないガードジェムの失敗をどのようにすればよいですか?
Rails 3.1、guard 0.8.8、Fedora 13
jquery テンプレートへの変更を監視し、スプロケットを使用して JavaScript アセットを再コンパイルするようにガードを構成しました。テンプレートで作業して構文エラーを生成するたびに、guard は SyntaxError 例外で失敗するスプロケットを実行しようとします。
これにより、ガードが致命的に失敗し、ファイルの変更に反応しなくなります...ガードを再起動するか、対話的にリロードするように指示しない限り。
これは正常で予期される動作ですか? 非致命的に失敗させる方法はありますか?