Magento 2:「静的ビューファイル」とは


21

私が使用している場合module:enablemodule:disable、モジュールを有効または無効にするコマンドを、

php bin/magento module:enable Pulsestorm_TutorialObjectManager1
php bin/magento module:enable Pulsestorm_TutorialObjectManager1

出力には次の内容が含まれます

警告:生成された静的ビューファイルは消去されませんでした。--clear-static-contentオプションを使用してそれらをクリアできます。静的ビューファイルをクリアしないと、管理およびストアフロントで表示の問題が発生する場合があります。

静的に生成されたビューファイルとは正確に何ですか?

これらのファイルはどこにありますか?

--clear-static-contentオプションを含めると、ファイルを削除するだけですか、それともシステム内の他の項目もリセットされますか?

回答:


12

ファイルを削除する(および出力を印刷する)ように見えます。そのフラグを設定すると、スタックには次のものが含まれます。

\Magento\Setup\Console\Command\AbstractModuleCommand::cleanup
\Magento\Framework\App\State\CleanupFiles::clearMaterializedViewFiles

これらのディレクトリを空にします(\ Magento \ Framework \ App \ Filesystem \ DirectoryListを参照):

DirectoryList::STATIC_VIEW == 'static'
DirectoryList::VAR_DIR == 'var'
DirectoryList::TMP_MATERIALIZATION_DIR == 'view_preprocessed'

の使用を検索するとDirectoryList::STATIC_VIEW、多くの出力が表示されますが、特にそのほとんどはCSSとマージされたJSのデプロイとクリーニングに関係しています。さらに掘り下げることなく、「静的ビュー」はCSSやJSなどの後処理された静的アセットファイルであると言っても安全だと思います。開発者がこの機能を拡張および変更する方法を知りたいです。


12

「表示」とは、プレゼンテーション層(MVCから)を指します。

「静的」とは、サイト用にキャッシュできることを意味します(動的ではありません)。たとえば、LESSファイルから生成されたCSS。

本番環境では、ファイルを事前計算できます。開発者モードではオンデマンドで生成できますが、残りは高速化のためにファイルにキャッシュされます。したがって、新しいモジュールをロードすると、新しいJS、CSS、レイアウトファイルなどがロードされる可能性があるため、古いファイルをフラッシュして、新しいモジュールのすべての変更を確実に取得する必要があります。

ファイルを削除する瞬間に静的コンテンツをクリアします。いつかはもっとできるかもしれないが、私が知っている計画はまだない。

それらはpub / staticにありますが、/ varの下にもキャッシュファイルがあります。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.