Libsass: @extend๋Š” @mixin์„ ๋ฌด์‹œํ•ฉ๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2019๋…„ 08์›” 06์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: sass/libsass

์ž…๋ ฅ.scss

%color {
  color: blue;
}

<strong i="6">@mixin</strong> getOverridedSelector {
  &#{&} {
    @content;
  }
}

.foo {
  <strong i="7">@include</strong> getOverridedSelector {
    <strong i="8">@extend</strong> %color;
  }
}

.bar {
  <strong i="9">@include</strong> getOverridedSelector {
    color: red;
  }
}

์‹ค์ œ ๊ฒฐ๊ณผ

๋ฆฌ์‚ฌ์Šค 3.6.0
๋ฃจ๋น„ ์‚ฌ์Šค 3.7.4
๋ฟ๋งŒ ์•„๋‹ˆ๋ผ codepen (์•„๋งˆ๋„ libsass)

.foo {
  color: blue;
}

.bar.bar {
  color: red;
}

์˜ˆ์ƒ ๊ฒฐ๊ณผ

๋‹คํŠธ sass 1.22.6-1(Archlinux AUR)

.foo.foo {
  color: blue;
}

.bar.bar {
  color: red;
}

์ด ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•œ ์†Œ์Šค: https://stackoverflow.com/questions/57376896

Bug - Confirmed Dev - Test Written

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

Dart Sass๊ฐ€ ์—ฌ๊ธฐ์— ๋งž์Šต๋‹ˆ๋‹ค. Ruby Sass ๋ฐ LibSass ๋™์ž‘์€ ์ƒ์„ฑ๋œ ์„ ํƒ๊ธฐ์˜ ํŠน์ด์„ฑ( .foo , ํŠน์ด์„ฑ 10)์ด ํ™•์žฅ๊ธฐ( .foo.foo ์˜ ํŠน์ด์„ฑ๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์•„์•ผ ํ•œ๋‹ค๋Š” ๋‘ ๋ฒˆ์งธ ํ™•์žฅ ๋ฒ•์น™์„ ์œ„๋ฐ˜ .foo .foo.foo , ํŠน์ด๋„ 20).

๋ชจ๋“  3 ๋Œ“๊ธ€

@nex3 ์ด๊ฒƒ์€ ์˜๋„์ ์ž…๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด dart-sass์˜ ํšŒ๊ท€์ž…๋‹ˆ๊นŒ?
์ด์ „ ๋ฒ„์ „์˜ ruby โ€‹โ€‹sass๋Š” libsass์™€ ๋™์ผํ•œ ์ถœ๋ ฅ์„ ๊ฐ€์กŒ์Šต๋‹ˆ๋‹ค.

Dart Sass๊ฐ€ ์—ฌ๊ธฐ์— ๋งž์Šต๋‹ˆ๋‹ค. Ruby Sass ๋ฐ LibSass ๋™์ž‘์€ ์ƒ์„ฑ๋œ ์„ ํƒ๊ธฐ์˜ ํŠน์ด์„ฑ( .foo , ํŠน์ด์„ฑ 10)์ด ํ™•์žฅ๊ธฐ( .foo.foo ์˜ ํŠน์ด์„ฑ๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์•„์•ผ ํ•œ๋‹ค๋Š” ๋‘ ๋ฒˆ์งธ ํ™•์žฅ ๋ฒ•์น™์„ ์œ„๋ฐ˜ .foo .foo.foo , ํŠน์ด๋„ 20).

์ด๊ฒƒ์€ ์ตœ์‹  ๋งˆ์Šคํ„ฐ์—์„œ ์ˆ˜์ • ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰