サイトの各ページに「共通」の LESS ファイルが含まれ、各ページがページ固有のスタイルを含む別の LESS ファイルを指定できるように、Django プロジェクトのテンプレートを整理しました。
問題は、「共通」LESS ファイル内の変数を参照できるようにするには、ページ固有の LESS ファイルが必要なことです。これを行う最も簡単な方法は、変数宣言を別のファイルに移動し、両方の LESS ファイルで実行できるようにすることだと思いました@import
。
ただし、Django アプリは、静的ファイルを格納するために別のディレクトリを使用します。最終的に、ファイルシステムは次のようになります。
- 一般 - 静的 -CSS - 定義.less - common.less - 他の - 静的 -CSS - その他.少ない
との両方common.less
をother.less
インポートする必要がありdefinitions.less
ます。この場合、次のcommon.less
ように簡単です。
@import "definitions.less";
以下は、LESS ファイルが実際にどのようにページに含まれているかを示したものです。
{% load compress %}
{% load static %}
{% compress css %}
<link href="{% static "css/common.less" %}"
rel="stylesheet" type="text/less">
{% endcompress %}
共通の変数定義が両方の LESS ファイルで確実に利用できるようにする最も簡単な方法は何ですか? いくつかの理由から、LESS ファイルの結合を避けたいと考えています。
- 疎結合 (サイトの残りの部分に影響を与えずにアプリを非アクティブ化する機能) の利点がなくなります。
- すべてのアプリのすべてのスタイルを取得する必要があるため、1 つのページで取得される追加データが増加します。