从 node-sass 移动到 dart sass 后,编译器在关键帧混合中抛出错误
After moving from node-sass to dart sass, compiler throws error in keyframes mixin
我不得不在我的项目中更改 sass 编译器。我正在使用 node-sass,现在我需要将其更改为 dart sass.
我基本上做到了,webpack documantation
里面说的
{
loader: 'sass-loader',
options: {
// Prefer `dart-sass`
implementation: require('sass'),
},
},
当我 运行 编译时它给我错误:
SassError: expected selector.
╷
3 │ 0%{
│ ^
╵
它在我的动画文件中。我的关键帧混合:
@mixin keyframes($animation-name) {
-webkit-keyframes #{$animation-name} {
@content;
}
-moz-keyframes #{$animation-name} {
@content;
}
@keyframes #{$animation-name} {
@content;
}
}
还有我的动画:
@include keyframes(bounceDown) {
0% {
transform : translateY(0);
}
40% {
transform : translateY(7px);
}
100% {
transform : translateY(0);
}
}
当我使用 node-sass 时,这段代码有效。知道我应该改变什么吗?
我想通了!
问题是我使用了 -moz-keyframes
而不是 @-moz-keyframes
。
它由 node-sass 正确处理..但它似乎是 dart sass.
的错误
干杯!
我不得不在我的项目中更改 sass 编译器。我正在使用 node-sass,现在我需要将其更改为 dart sass.
我基本上做到了,webpack documantation
里面说的{
loader: 'sass-loader',
options: {
// Prefer `dart-sass`
implementation: require('sass'),
},
},
当我 运行 编译时它给我错误:
SassError: expected selector.
╷
3 │ 0%{
│ ^
╵
它在我的动画文件中。我的关键帧混合:
@mixin keyframes($animation-name) {
-webkit-keyframes #{$animation-name} {
@content;
}
-moz-keyframes #{$animation-name} {
@content;
}
@keyframes #{$animation-name} {
@content;
}
}
还有我的动画:
@include keyframes(bounceDown) {
0% {
transform : translateY(0);
}
40% {
transform : translateY(7px);
}
100% {
transform : translateY(0);
}
}
当我使用 node-sass 时,这段代码有效。知道我应该改变什么吗?
我想通了!
问题是我使用了 -moz-keyframes
而不是 @-moz-keyframes
。
它由 node-sass 正确处理..但它似乎是 dart sass.
干杯!