問題タブ [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.
windows - ぶら下がっているWindowsNode.jsが少ない
私はWindowsでSymfony2をセットアップしようとしていて、より少ないコストでアセットを使用できるようにしています。
Windows用のnode.js(0.6.8)をインストールしました。それから私は走っnpm install less --global
て、より少ないものを見つけましたC:\Users\Matt\AppData\Roaming\npm\node_modules
私のSymfonyのセットアップに関しては、Assetic
(1.0.2で読んだバグのために)のマスターブランチがありますが、標準のv1.0.1はAsseticBundle
いくつかの作業の後、次の方法でレンダリングするファイルの例を少なくすることができました: http://localhost/app_dev.php/css/compiled-main_part_1_boilerplate_1.css
次に、(同じサブディレクトリにある)他の.lessファイルを@importする.lessファイルを切り替えました。ローカルサーバーのそのページに移動しようとすると(この少ない構成を使用して)ハングし、コマンドプロセスとnode.exeプロセスの両方が実行されていることがわかります。
このコマンドは、一時ディレクトリにあるnode.jsでスクリプトを実行しようとしています。コマンドプロンプトでnode.jsを介してそのファイルを正常に実行できますが、Symfony/Asseticを使用してファイルをロードすることはできません。
とにかく、Windowsでnode.js、less、asseticを使用する方法はありますか?
これが私の関連する設定ファイルのセクションです:
dev config override:
parameters.ini内:
twig - Assetic、画像アセット、およびキャッシング
構築中のアプリケーションにAsseticを統合する作業を行っています。アプリケーションは MVC パターンに従いますが、フレームワークは使用しません。Twigはテンプレートに使用されます。
私はドキュメントを読み、いくつかの役立つ ブログ投稿を見てきました。
アプリケーションは次のように構成されています。
- 応用
- 小枝テンプレート
- js
- CSS
- public_html
- js
- CSS
- 画像
twig テンプレートはレンダリングされてからアプリケーションによって返されるため、非常に簡単です。フォルダーの下のjs
およびフォルダーには、生の JavaScript および css ファイルが保持されます。css
application
私の計画は、js と css ファイルを組み合わせて縮小し、public_html フォルダーの下のjs
andフォルダーに格納することです。css
assetic を使用して画像を最適化する予定はないので、それらは直接images
下のフォルダーに配置されますpublic_html
。
今質問:
twig の assetic を使用することで、結合および縮小されたアセットを public_html ディレクトリにエクスポートできることを理解しています。
この場合、
css/all.css
そのテンプレートがレンダリングされるたびにファイルが再生成されますか?アプリケーションを移植可能にし (仮想ホストを使用してホストすることも、フォルダでホストすることもできます)、 のようなルーティングされた URL を持つサイトで物事が確実に機能するようにするために
http://site.com/controller/action
、assetic は画像の URL を絶対 URL に「書き換え」ます (つまり、 )images/a.jpg
にhttp://mysite.com/images/a.jpg
?ネストされたテンプレートを使用するとアセットは機能しますか?
parent.twig:
child.twig:
この場合、assetic に結合
childstyle.css
しmainstyle.css
て 1 つのファイルとして提供する必要があることをどのように知らせることができますか?
symfony - symfony2+Assetic プロジェクトで Node.js なしで LESS をどのように使用しますか?
誤解しないでください。lessc
php (私はlessphpについて話している) などで他のコンパイラさえ持っていたことを私は知っています。
しかし!ほら、私はless.jsの働き方が本当に好きです。
私が意味したのは...
- あなたのlessファイルを指す
- JavaScript を指す
- 仕事
終わったら
localStorage
ブラウザからバージョンを取得する- CSSファイルに入れます。
似たようなことをする方法を考えたことはありますか?
twig - Assetic がファイルを生成しない
Twig で Assetic を使用していますが、symfony2 フレームワークは使用していません。
プロジェクトの設定方法は次のとおりです
生のcssは以下に保存されて/site/template/css
おり、asseticにcssを縮小して出力したい/public_html/css
.
Assetic を twig 拡張として設定する方法は次のとおりです。
次に、私のテンプレートで:
最終出力で、assetic が一意の URL を生成したことがわかります。
しかし、 を調べてみると/public_html/css
、ファイルがまったく生成されていません。
私はApacheでWindows 7サーバーを使用していますが、PHPはどこにでもファイルを書き込むことに問題はありません。
何が原因でしょうか?
symfony - Symfony2 Assetic Dynamic Image Inclusion in Twig
TwigとAsseticを使用して記事の特定のサムネイルをロードしたいと思います。動作しないコードは次のとおりです。
configおよびparams:
小枝ファイル:
つまり、基本的には/Resources/public/images/article_thumbs/ {ID}/{FILE.ext}に保存している画像があります。
Twigの特定の記事のそれらを取得したいと思います。どうすればそれを達成できますか?
編集: なぜ私はそれらをWebフォルダに入れないのですか?
ある時点でアセットフィルターの使用を考えていたと思いますが、実際には必要ないと思います。
今のところ、それらをWebフォルダーに保存します。
それで、それを作成してWeb dirに入れると、小枝thumbnail_dir="/images/article_thumbs"
で言うだけですか?{{ asset( thumbnail_dir ~ '/' ~ id ~ '/' ~ article.thumbnailFile ) }}
css - Assetic の cssrewrite とサブフォルダー
Web アプリケーションで Assetic と Twig を使用しています。私は symfony2 フレームワークを使用していません。
プロジェクトの構造は次のようになります
アプリ
- スタイル
- 画像
www
- CSS
- 画像
テンプレートの 1 つで Assetic stylesheets タグを使用して、このマークアップを作成しました。
現在、アプリは http://localhost/myapp/ でホストされており、 http://localhost/myapp/www経由でアクセスします。
アセットをコンパイルして の下のディレクトリにダンプするダンプ ストリップを作成しましたwww
。
私のCSSでは、絶対パスを使用して画像を参照しています(これは機能します):
相対パス (cssrewrite フィルターを使用) を使用すると、URL は書き換えられません。
images/b.png
URL をそのまま使用し、アセット ダンパーにフル パスを決定させたいと考えています。
cssrewrite フィルターを有効にしましたが、何もしていないようです。CSS で相対パスを指定し、cssrewrite でそれを絶対パスに書き換えるにはどうすればよいですか?
symfony - Symfony2 - カスタム フォーム フィールド タイプ ウィジェット内からアセットを使用して JS ファイルをロードする
そのため、カスタム フォーム フィールド タイプが必要であり、フィールド コードを定義するブロックで、アセットを使用して JS をロードする必要があります。
私が抱えている問題は、Assetic によって生成されたリソースへのパスが間違っていて、404 になることです。
それは次のようなものでなければなりません:
これを回避する方法はありますか?
symfony - Symfony2でAsseticの出力ディレクトリを設定する
アセットがJSファイルをダンプする場所の出力ディレクトリをグローバルに構成したいと思います。現在、彼らは常にに行きweb/js/*
ます。これをに変更したいweb/js/compiled/*
。
これをファイルごとのレベルで指定することができます:http ://symfony.com/doc/2.0/cookbook/assetic/asset_management.html#dumping-asset-files
私のSymfonyアプリ全体でこれをグローバルに設定する方法を見つけることができないようです。不足している構成パラメーターはありますか?
アップデート
と呼ばれる資産構成パラメーターが見つかりましたwrite_to
。これをで設定するconfig.yml
と、コマンドラインassetic:dump
はファイルを新しいディレクトリにダンプしますが、twigファイル内ではasset_url
varは元のパスを指します。
php - YUICompressor エラー: RuntimeException: ファイル名、ディレクトリ名、またはボリューム ラベルの構文が正しくありません
開発サーバー (Windows 7) の Symfony 2.0.10 で YUICompressor を assetic と共に使用しようとしていますが、次のエラーが発生します。
RuntimeException: The filename, directory name, or volume label syntax is incorrect.
何が問題ですか?
私の現在の構成は次のとおりです。
assetic の下の app/config.yml にあります。
私の小枝テンプレートで。
他に何も設定されておらず、何も変更されていません。私はこの記事に従っています: http://symfony.com/doc/2.0/cookbook/assetic/asset_management.html
YUICompressor のバージョンは 2.4.7 です
PS: Assetic はフィルターがなくても問題なく動作し、私も試してみjava -jar yuicompressor.jar ./script.js -o ./test.js
ました。
javascript - Symfony2-エラーを引き起こすAsseticJavaScript圧縮
Symfony2アプリを本番モードにしようとしています。圧縮された単一のJavaScriptファイルがエラーを引き起こし、サイトを正しくレンダリングできなくなるという事実を除いて、すべて正常に実行されます。私はこれをブラウザのデバッグコンソールで見つけました:
Uncaught TypeError:undefinedは関数ではありません
Uncaught TypeError:Object[objectObject]にはメソッド'treeview'がありません
最初のエラーはjQueryプラグインを参照していますツリービューは、ディレクトリ構造のようなツリーをレンダリングするjQueryのプラグインを参照しています。
一方、開発モードではすべて正常に実行されます。これは、圧縮が行われず、すべてのファイルが1つずつ含まれるためです。誰かがこれで私を助けることができますか?