VueJS/Tailwind CSS/VITE : utiliser les variables d'environnement comme couleur du thème Tailwind
P粉174151913
2023-08-26 14:31:22
<p>J'ai une configuration VueJS avec Vite, Tailwind CSS et postcss et j'aimerais définir différentes couleurs à l'aide de variables dans le fichier <code>.env.name</code> le code est déployé Différents thèmes de couleurs. ≪ /p>
</p><p>J'ai essayé d'utiliser un fichier contenant <code>.env</code></p>
<pre class="brush:php;toolbar:false;">VITE_COLOR="FF0000"</pre>
<p>Et importer</p> dans <code>tailwind.config.js</code>
<pre class="lang-js Prettyprint-override"><code>...
thème: {
couleurs: {
primaire : import.meta.env.COLOR
}
}
...
</code></pre>
<p>Cependant, j'obtiens l'erreur suivante : </p>
<blockquote>
<p>Erreur de syntaxe : 'import.meta' ne peut pas être utilisé en dehors d'un module</p>
</blockquote>
<p>Que dois-je changer pour que cela fonctionne, ou existe-t-il une meilleure solution ? </p>
Les configurations Tailwind sont des fichiers CommonJS (pas des modules), vous ne pouvez donc pas utiliser les fonctionnalités ES6 comme
import
Vous pouvez installer un package appelé dotenv
Doit être placé au-dessus du fichier de configuration tailwind, par exemple
在
préfixe.env
中创建颜色变量。请注意,由于我们要求它超出了 Vite 的范围,因此它可能不会带有VITE_
Vous pouvez désormais y accéder en configuration vent arrière
Cela fonctionnera mais si vous modifiez
.env
les couleurs dans le fichier, vous devrez reconstruire à nouveau le style. Si cela fonctionne pour vous (un déploiement – une couleur de toute façon) – parfait. Je suggérerais personnellement une autre solution basée sur des variables CSS - CanIUse linkDéfinir des variables dans des fichiers CSS ou dans des
index.html
中的标签内创建
style
tagset en configuration
C'est tout - pas de packages supplémentaires, de travail supplémentaire, si vous modifiez une variable CSS, les modifications seront appliquées instantanément - même en production car nous utilisons la fonctionnalité CSS