【发布时间】:2022-04-14 15:24:31
【问题描述】:
我有以下 next.config.js 设置
module.exports = (phase, {defaultConfig}) => {
if ('sassOptions' in defaultConfig) {
defaultConfig['sassOptions'] = {
includePaths: ['./styles'],
prependData: `@import "styles/mixins.scss";`,
}
}
return defaultConfig;
}
虽然下面的 mixin 在我的 xyz.module.scss 中完美运行
@mixin panelBoxShadow() {
box-shadow: 0 2px 7px 0 rgba(0,0,0,0.11);
}
// Used in module.scss like
@include buttonBoxShadow();
这个 mixin 根本不起作用
@mixin maxWidth($value) {
@media (max-width: $value) {
@content
}
}
// Used in module.scss like
@include maxWidth(var(--tablet)) {
padding-bottom: 1rem;
...
}
我知道 SCSS/SASS 是一个预处理器,并且在 var() CSS 变量之前对其进行评估,但是我怎样才能使这项工作无需返回手动导入每个 xyz.module.scss 中的 mixins.scss 和在那里使用 SCSS 变量?有没有办法?
【问题讨论】:
-
我认为你不能在媒体查询中使用 css 变量。