Почему мои CSS-модули не работают в проекте React/Symfony?CSS

Разбираемся в CSS
Ответить
Anonymous
 Почему мои CSS-модули не работают в проекте React/Symfony?

Сообщение Anonymous »

Я создаю приложение React(18.2.0)/Symfony7.1 и пытаюсь настроить свой проект.
Пока все работает, за исключением случаев, когда я м, используя модуль в CSS (https://create-react-app.dev/docs/addin ... tylesheet/):

Код: Выделить всё

// Header.js
import React from 'react';
import styles from './Header.module.css';
import Navigation from '../Navigation/Navigation';

export default function Header() {
return (


RoadtripClub



);
}

Код: Выделить всё

// Header.module.css
.title {
font-family: var(--ff-secondary);
font-size: var(--fs-700);

color: red;
}
Интересно, что когда я удаляю файл .title Header.module.css, элемент в HTML теряет свое имя класса.
Таким образом, файл находится, потому что имя класса обнаружил, что .title существует в моем Header.module.css, но он не встроен в общедоступный app.css.
Я использую npm run watch для сборки app.css и при сборке npm изменений нет, Header.module.cssнет в моем app.css
Пока что Я попробовал все, что было в моих силах (думаю?): Для установки я использовал Babel. Может быть, с этим что-то не так?
Вот мой файл webpack.config.js:

Код: Выделить всё

const Encore = require('@symfony/webpack-encore');

// Manually configure the runtime environment if not already configured yet by the "encore" command.
if (!Encore.isRuntimeEnvironmentConfigured()) {
Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
}

Encore
// directory where compiled assets will be stored
.setOutputPath('public/build/')
// public path used by the web server to access the output path
.setPublicPath('/build')

// entry points
.addEntry('app', './assets/app.js')
.addEntry('js/app', './assets/js/index.js')

// enable optimizations
.splitEntryChunks()
.enableSingleRuntimeChunk()

// enable features
.cleanupOutputBeforeBuild()
.enableBuildNotifications()
.enableSourceMaps(!Encore.isProduction())
.enableVersioning(Encore.isProduction())

// configure Babel
.configureBabelPresetEnv((config) => {
config.useBuiltIns = 'usage';
config.corejs = '3.23';
})

// enable SCSS and PostCSS
// .enableSassLoader()
.enablePostCssLoader()

// enable React
.enableReactPreset()

// enable CSS Modules
.configureCssLoader(options => {
options.modules = {
localIdentName: '[name]__[local]___[hash:base64:5]',
};
})

// other configurations
;

module.exports = Encore.getWebpackConfig();
Я что-то пропустил?
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/786 ... ny-project
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»