Par coderoe · 3 min de lecture
NativeWind est compatible avec les projets Expo et React Native sans framework. Cependant, utiliser Expo facilite grandement l'intégration et la configuration.
Commencez par installer les dépendances requises avec la commande suivante :
npx expo install nativewind tailwindcss@^3.4.17
Générez le fichier de configuration de Tailwind CSS avec la commande :
npx tailwindcss init
tailwind.config.js
Ajoutez et modifiez le contenu suivant dans tailwind.config.js
:
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ["./app/**/*.{js,jsx,ts,tsx}"], // Mettez à jour ces chemins selon la structure de votre projet
presets: [require("nativewind/preset")],
theme: {
extend: {},
},
plugins: [],
};
Créez un fichier global.css
à la racine de votre projet et ajoutez :
@tailwind base;
@tailwind components;
@tailwind utilities;
Modifiez le fichier babel.config.js
pour inclure le preset Babel de NativeWind :
module.exports = function (api) {
api.cache(true);
return {
presets: [
["babel-preset-expo", { jsxImportSource: "nativewind" }],
"nativewind/babel",
],
};
};
metro.config.js
Si le fichier metro.config.js
n'existe pas, créez-le avec :
npx expo customize metro.config.js
Puis ajoutez cette configuration :
const { getDefaultConfig } = require("expo/metro-config");
const { withNativeWind } = require('nativewind/metro');
const config = getDefaultConfig(__dirname);
module.exports = withNativeWind(config, { input: './global.css' });
Dans votre fichier _layout.tsx
, ajoutez l'import du fichier CSS :
import "../global.css";
Vous pouvez maintenant utiliser les classes Tailwind CSS directement dans vos composants React Native Expo :
<View className="flex-1 justify-center items-center">
<Text className="text-white text-4xl font-bold">Tuto by Codereo</Text>
</View>
Vous avez maintenant un projet React Native Expo entièrement configuré avec Tailwind CSS via NativeWind v4. Profitez de la puissance des classes utilitaires pour un développement plus rapide et efficace !