ホームページ  >  に質問  >  本文

VueJS/Tailwind CSS/VITE: Tailwind テーマの色として環境変数を使用する

<p>Vite、Tailwind CSS、postcss を使用して VueJS セットアップを行っており、<code>.env.name</code> ファイル内の変数を使用してさまざまな色を定義して、どこにあるかに基づいて適用できるようにしたいと考えています。コードがデプロイされます。 さまざまなカラーテーマが展開されます。 < /p> </p><p><code>.env</code></p>を含むファイルを使用してみました。 <pre class="brush:php;toolbar:false;">VITE_COLOR="FF0000"</pre> <p>そして <code>tailwind.config.js</code> に </p> をインポートします。 <pre class="lang-js prettyprint-override"><code>... テーマ: { 色: { プライマリ: import.meta.env.COLOR } } ... </code></pre> <p>しかし、次のエラーが発生します: </p> <ブロック引用> <p>構文エラー: 'import.meta' はモジュール外では使用できません</p> </blockquote> <p>機能させるには何を変更する必要がありますか、それとももっと良い方法はありますか? </p>
P粉174151913P粉174151913420日前407

全員に返信(1)返信します

  • P粉212114661

    P粉2121146612023-08-27 00:20:24

    Tailwind 構成は CommonJS ファイル (モジュールではない) であるため、import

    のような ES6 機能は使用できません。

    dotenv

    という名前のパッケージをインストールできます。 リーリー

    tailwind 構成ファイルの上に配置する必要があります。たとえば、

    リーリー

    .env にカラー変数を作成します。 Vite の範囲外である必要があるため、VITE_

    という接頭辞が付けられない場合があることに注意してください。 リーリー

    追い風構成でアクセスできるようになりました

    リーリー

    これは機能します ただし、 .env ファイルの色を変更した場合は、スタイルを再度再構築する必要があります。それがうまくいくなら(とにかく 1 つの展開 - 1 色)、素晴らしいです。個人的には、CSS 変数に基づいた別の解決策をお勧めします - CanIUse link

    CSS ファイルで変数を定義するか、index.html タグ内に styletags

    を作成します。 リーリー

    そして構成内で

    リーリー

    以上です - 追加のパッケージや余分な作業は必要ありません。CSS 変数を変更すると、変更は即座に適用されます - CSS 機能を使用しているため、本番環境であっても変更が適用されます

    返事
    0
  • キャンセル返事