Я в процессе обновления проекта Angular 8.2.14 до Angular 9.1.0. До сих пор я успешно использовал ng update для переноса всех файлов в самую последнюю версию Angular. Однако, чтобы это обновление было успешным, я также должен обновить библиотеки, используемые в этом проекте. Одной из этих библиотек является ' Веб-компоненты материалов для Angular' (@ angular -mdc / web).
В этой библиотеке есть руководство по началу работы для того, чтобы иметь возможность правильно его реализовать. Это включает в себя изменение файла 'angular. json' для установки следующего:
"stylePreprocessorOptions": {
"includePaths": [
"node_modules/"
]
},
Это руководство по началу работы также включает в себя начало реализации @use вместо @import в моем * .s css файлы, чтобы используемые компоненты имели надлежащий стиль.
Проблема, однако, заключается в том, что это @use, похоже, не работает.
Например, в руководстве по началу работы В примере указывается, что в файл styles.s css необходимо добавить следующее:
@use './styles/body';
@use '@material/theme' with (
$primary: #6200ee,
$secondary: #faab1a,
$background: #fff,
);
// MDC Typography
@use '@material/typography/mdc-typography';
// MDC Button
@use './styles/button';
// Angular MDC
@use '@angular-mdc/theme/material';
А затем при создании файла в styles / _body.s css я должен добавить:
// Override user agent body margin for mdc-top-app-bar
body {
margin: 0;
}
Однако при этом стиль, добавленный к тегу body, не используется или вообще не отображается в браузере. Как будто весь файл не используется при компиляции стилей.s css.
Поэтому мой вопрос: что нужно отрегулировать, чтобы можно было использовать @use в * .s css файлы в моем Angular 9.1.0 проекте?
Пример StackBlitz можно найти здесь