Comment utiliser Sass dans Next.js
Next.js prend en charge nativement l'intégration avec Sass après l'installation du package, en utilisant les extensions .scss et .sass. Vous pouvez utiliser Sass au niveau des composants via les CSS Modules et l'extension .module.scss ou .module.sass.
D'abord, installez sass:
npm install --save-dev sassBon à savoir:
Sass prend en charge deux syntaxes différentes, chacune avec sa propre extension. L'extension
.scssnécessite d'utiliser la syntaxe SCSS, tandis que l'extension.sassnécessite d'utiliser la syntaxe indentée ("Sass").Si vous ne savez pas laquelle choisir, commencez par l'extension
.scssqui est un sur-ensemble de CSS et ne nécessite pas d'apprendre la syntaxe indentée ("Sass").
Personnalisation des options Sass
Si vous souhaitez configurer vos options Sass, utilisez sassOptions dans next.config.
import type { NextConfig } from 'next'
const nextConfig: NextConfig = {
sassOptions: {
additionalData: `$var: red;`,
},
}
export default nextConfig/** @type {import('next').NextConfig} */
const nextConfig = {
sassOptions: {
additionalData: `$var: red;`,
},
}
module.exports = nextConfigImplémentation
Vous pouvez utiliser la propriété implementation pour spécifier l'implémentation Sass à utiliser. Par défaut, Next.js utilise le package sass.
import type { NextConfig } from 'next'
const nextConfig: NextConfig = {
sassOptions: {
implementation: 'sass-embedded',
},
}
export default nextConfig/** @type {import('next').NextConfig} */
const nextConfig = {
sassOptions: {
implementation: 'sass-embedded',
},
}
module.exports = nextConfigVariables Sass
Next.js prend en charge les variables Sass exportées depuis les fichiers CSS Module.
Par exemple, en utilisant la variable Sass exportée primaryColor:
$primary-color: #64ff00;
:export {
primaryColor: $primary-color;
}import variables from '../styles/variables.module.scss'
export default function MyApp({ Component, pageProps }) {
return (
<Layout color={variables.primaryColor}>
<Component {...pageProps} />
</Layout>
)
}