問題タブ [assetic]
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.
php - クエリなしの資産自動キャッシュバスティング?
私はこれについて多くの情報を見つけることができませんでした。
私はすべてのcss(そして実際にはjs)ファイルを次のようなものにコンパイルしたいと思います:
現在、私はこれらを取得することしかできません:
最初のものは、キャッシュの無効化がまったくないため、最悪です。
2つ目は、キャッシュの無効化に使用できるハッシュを生成しますが、何らかの理由で、.cssファイルの何かを変更してから、これを再度実行しても変更されません。
ここで説明されているように、バージョンを手動で変更する必要があるため、3番目のものもひどいです:http ://symfony.com/doc/current/reference/configuration/framework.html#ref-framework-assets-version 。また、これにクエリを使用することは良い考えではないと思います(一部のブラウザやCDNはそれを好まないかもしれません)。ファイル名が変更された方がはるかに良いでしょう:'all-c498dsfbc.css'。私が正しく覚えていれば、これはRailsで行われる方法です。
何かご意見は?
編集
この機能が欠落しているようです、私はそれを信じることができません:https ://github.com/kriswallsmith/assetic/pull/190
php - AsseticでCompassとYuiCSSのフィルターを使用するにはどうすればよいですか?
2つのファイルがあります。1つは.css(vendor / somevendor / somelibrary / css /内)で、もう1つは.scss(@ ProjectMainBundle / Resources / public / css /内)です。
.scssをSassフィルターで.cssにコンパイルしてから、両方の.cssファイルをYuiフィルターで縮小したいと思います。私はこれのさまざまなバリエーションを試しました:
問題は、Sassフィルターが.cssファイルにも適用されているため、インデントエラーが発生することです。
config.ymlに、対応する'apply_to'パラメーターを追加しましたが、役に立ちませんでした。
では、どうすればこれを行うことができますか?結果として得られる.cssが1つを超えないようにします。
security - symfony 2静的アセット認証(ファイアウォールの背後にある.js)
ファイアウォールの背後にある静的資産(javascriptとcss)を保護するための手順は何ですか?javascriptを多用する管理セクションがあります。コードを公開したくありません。
私は現在、asseticを使用してすべてのJavaScriptを/web/admin/js/xyz.js内のファイルにコンパイルしています
私が見落としているこれを行う簡単な方法はありますか?
php - RVMのインストール後にSass/Compassをロードできず、Symfony2のAsseticで使用できません
Rubyが必要なCapistranoが必要なCapifonyを使おうとしていました。しかし、私のaptバージョンのrubyは古く、構文エラーをスローしていました。そこで、RVMをインストールして、これを実行しました。
それらのパスをコピーしてconfig.ymlに貼り付けました
RVMに切り替える前は、CompassとSassに関するすべてが正常に機能していました。Compass / Sassはまだapp_dev.phpから機能しているようですが、本番用にアセットをダンプしようとすると壊れます。
私が得ている別のエラー:
関連:@mpapis @jamz Assetic PHPを使用して、RVMでインストールした後にSassが壊れました
コンパスとサスのタグを追加したいと思います。より高いスコアで実行できるかどうかわからない。
アップデート
次のようなラッパーを追加しました。
そしてconfig.ymlを再度編集しましたが、これらのエラーがランダムに交互に発生します。
エラー1:
エラー2:
コンパスはapp_dev.phpを介して引き続き正常に動作します
javascript - JavaScriptファイルを最適に提供してロードする方法は?
グローバルスケールのWebアプリケーションの経験が豊富な人が、私が持っているいくつかの質問、仮定、および考えられる誤解を明らかにしてくれることを願っています。
世界中に数十万人のユーザーがいて、ソースが1つの場所(たとえば中央ヨーロッパ)から提供されている架空のサイト(大量のクライアント側/動的コンポーネント)を考えてみましょう。
- アプリケーションが一般的なJavaScriptライブラリに依存している場合は、Google CDNから取得して、1つの縮小されたJSファイルに(すべてのアプリケーション固有のJavaScriptとともに)コンパイルするか、Google CDNとは別にロードする方がよいでしょうか?
- Assetic VS headjs:1つのJSファイルをロードするか、すべてのスクリプトを並列にロードする(依存関係の順に実行する)方が理にかなっていますか?
私の仮定(私を訂正してください):
人気のあるライブラリ用のGoogleなどのCDNを使用して、すべてのアプリケーション固有/ローカルJSコードを1つのファイルにコンパイルしますが、headjsを介してこれらすべてを並行してロードするのが最適のようですが、よくわかりません。サードパーティのJSとアプリケーション固有のJSを1つのファイルにサーバー側でコンパイルすると、ライブラリはおそらくユーザーのラインのどこかにキャッシュされるため、CDNを使用する目的はほとんど無効になります。
キャッシュに加えて、とにかくアプリケーションをホストしている中央サーバーよりも、GoogleのCDNからサードパーティのライブラリをダウンロードする方がおそらく速いでしょう。
人気のあるJSライブラリの新しいバージョンがリリースされ、パフォーマンスが大幅に向上した場合は、アプリケーションでテストしてから実装します。
- すべてのJSが1つのファイルにコンパイルされている場合、アプリケーションコードが変更されていなくても、すべてのユーザーがこのファイルを再ダウンロードする必要があります。
- サードパーティのスクリプトがCDNからロードされる場合、ユーザーはCDNから(またはどこかのキャッシュから)新しいバージョンをダウンロードするだけです。
説明されているような状況で、次の正当な心配のいずれかがありますか?
- 一部のユーザー(またはブラウザー)は、一度に1つのホスト名に特定の数の接続しか持てないため、サードパーティのCDNから一部のスクリプトを取得すると、読み込み時間が全体的に速くなります。
- 一部のユーザーは制限された環境でアプリケーションを使用している可能性があるため、アプリケーションのドメインはホワイトリストに登録されている可能性がありますが、CDNのドメインはリストされていません。(これが現実的な懸念である可能性がある場合、CDNからロードし、障害時に中央サーバーからロードしようとすることは可能ですか?)
javascript - Symfony2の資産的な原因のjavascriptエラー
私は問題を抱えています、私はそれを解決することができずに2日間そこにいます:
javascripts、prodを使用している小枝のあるページがあり、ページにエラーが表示され、devにエラーが表示されません
アセットを使用してみましたが、エラーが発生します
Webからアセットファイルを取得しようとしましたが、エラーも発生します
ベースファイル: http: //pastebin.com/Xyjg0U0L
ページのエラー: http: //pastebin.com/Vj73EuPk
dev.itenho.com.br/
dev.itenho.com.br/app_dev.php
私はubuntumeldのhtmlとcssの2つのバージョンを比較しましたが、同じです
php - アセットバージョンをcssとjsに追加する方法は?
圧縮されたjsとcssを次のようなものに出力するためにasseticが必要です。
v2.3.1/css/whatever.css
現在、これは私が本番用にcssとjsをダンプする方法です:$ php app/console assetic:dump --env=prod --no-debug
。しかし、それらはバージョンなしでcss/とjs/にダンプされます。
私はこれを読みましたが、css / jsではなく、画像のみを参照しているようです。
これを行う重要な理由は、キャッシュの無効化/無効化です。
symfony - Symfony 2.0 のアセット ダンプがデバッグ モードで間違った名前を生成する
prodモードで正常に動作するアセット(1つのディレクトリ内のすべてのスクリプトに対してtwigでブロック)を介してjavascriptを圧縮しています。ここで、prod env にデバッグ モードを使用したいので、設定でアセットをデバッグに切り替え、キャッシュをクリアし、デバッグをオンにしてアセットをダンプします。
これは一部の JavaScript では機能しますが、すべてではありません。symfony は、実際のファイルとは反対に、Web サイト (javascript タグ) では (1 つ) 高いサフィックス番号をそれらに追加します。キャッシュをクリアして再度ダンプすると問題が解決することもありましたが、今回は問題ありません。
例: ダンプ: /web/js/main_part_3_jquery-ui_6.js ただし、使用: /web/js/main_part_3_jquery-ui_1.js
どうすればこれを解決できますか?
編集:キャッシュを消去した後、サイトへの最初のリクエストに間違ったサフィックスが表示されません。
symfony - Symfony2 + Assetic:コンパイルされたJavaScriptをレイアウトにダンプすることは可能ですか?
私は簡単なウェブサイトを開発しています。javascriptにcoffeescriptを使用したいので、Asseticを使用してコンパイルしています。
外部ファイルへのリンクを追加する代わりに、コンパイルされたJavaScriptをWebページ自体にアセットダンプさせるにはどうすればよいですか?これはモバイルアプリ用なので、ネットワークトラフィックを最小限に抑えたい
arrays - スタイルシート配列?
Symfonyから
例があります:
変数を実装するにはどうすればよいですか? それとも配列?
公式の方法がないことはわかっています。
を使用できますTwig Extension
か? それともその他??
誰かが私の例を持っていますか??
前もって感謝します!